351178d9da
Merge branch 'feature/candidate_payments' into homo_experimental
2026-08-27 16:52:08 -03:00
b617285148
feat(payments): rename match reason from 'exact_amount_different_dni' to 'exact_amount_near_dni'
2026-08-27 16:40:32 -03:00
9bca41bfa5
feat(payments): filter candidates by DNI distance
2026-08-27 16:04:12 -03:00
5601285369
feat(payments): expose primary transfer candidate
2026-08-27 15:38:24 -03:00
6fb60c9a73
feat(payments): track transfer match candidates
2026-08-27 15:21:28 -03:00
c820741e5f
feat(purchase): refactor stock reservation expiration handling and update related tests
2026-08-27 10:06:42 -03:00
c51e24311f
Squashed commit of the following:
...
commit cd99a6489b
Merge: ebcbbb1 e63a036
Author: ncoronel <ncoronel@quo.ar >
Date: Wed Aug 26 10:12:44 2026 -0300
Merge branch 'fix/simplify_stock_reservations' of https://gitea.quo.ar/tbianchini/shopit-back into fix/simplify_stock_reservations
commit ebcbbb1774
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 16:33:39 2026 -0300
fix(cart): reconcile expired cart mutations
commit 3dd378ed06
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 16:10:15 2026 -0300
docs(stock): describe associated entity expiration
commit 4f705175bd
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 16:10:14 2026 -0300
test(stock): cover propagated reservation expiration
commit 82570fe941
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 16:09:52 2026 -0300
refactor(stock): propagate reservation expiration
commit d2a2b323e0
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:58:47 2026 -0300
docs(stock): document terminal reservation recovery
commit ec67623b7b
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:58:47 2026 -0300
test(stock): cover terminal reservation lifecycle
commit f6f138e180
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:58:41 2026 -0300
refactor(stock): make expired reservations terminal
commit d612b7a118
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:28:30 2026 -0300
docs(stock): describe unified expiration ownership
commit 49f42d4507
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:28:23 2026 -0300
test(stock): cover authoritative reservation expiration
commit 1881cc1d4b
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:28:17 2026 -0300
refactor(stock): make reservation expiration authoritative
commit 00ec37d8a0
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:05:34 2026 -0300
docs(stock): document centralized reservation flow
commit d9f374c718
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:05:29 2026 -0300
test(stock): cover aggregate reservation lifecycle
commit bbfdf8f342
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:05:23 2026 -0300
refactor(stock): centralize reservation aggregate
commit 8a0f29bdae
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 16:33:39 2026 -0300
fix(cart): reconcile expired cart mutations
commit 198ed400a9
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 16:10:15 2026 -0300
docs(stock): describe associated entity expiration
commit 23d83166e6
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 16:10:14 2026 -0300
test(stock): cover propagated reservation expiration
commit cb090402d0
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 16:09:52 2026 -0300
refactor(stock): propagate reservation expiration
commit c120b6f7c0
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:58:47 2026 -0300
docs(stock): document terminal reservation recovery
commit 1106fa28b4
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:58:47 2026 -0300
test(stock): cover terminal reservation lifecycle
commit 896fb81bcf
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:58:41 2026 -0300
refactor(stock): make expired reservations terminal
commit 8545fbc645
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:28:30 2026 -0300
docs(stock): describe unified expiration ownership
commit dd6dcb708a
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:28:23 2026 -0300
test(stock): cover authoritative reservation expiration
commit 624b246ff5
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:28:17 2026 -0300
refactor(stock): make reservation expiration authoritative
commit 007b95b904
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:05:34 2026 -0300
docs(stock): document centralized reservation flow
commit 0b3c8c93be
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:05:29 2026 -0300
test(stock): cover aggregate reservation lifecycle
commit ede718e448
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:05:23 2026 -0300
refactor(stock): centralize reservation aggregate
commit e63a03601a
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 16:33:39 2026 -0300
fix(cart): reconcile expired cart mutations
commit 389373ad8c
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 16:10:15 2026 -0300
docs(stock): describe associated entity expiration
commit ace02a3133
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 16:10:14 2026 -0300
test(stock): cover propagated reservation expiration
commit d69a6210f6
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 16:09:52 2026 -0300
refactor(stock): propagate reservation expiration
commit 3c0b43fea3
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:58:47 2026 -0300
docs(stock): document terminal reservation recovery
commit 9b0008626b
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:58:47 2026 -0300
test(stock): cover terminal reservation lifecycle
commit 61861e331a
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:58:41 2026 -0300
refactor(stock): make expired reservations terminal
commit 2cc9d7dd97
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:28:30 2026 -0300
docs(stock): describe unified expiration ownership
commit f982bcead1
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:28:23 2026 -0300
test(stock): cover authoritative reservation expiration
commit 7a85e1731d
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:28:17 2026 -0300
refactor(stock): make reservation expiration authoritative
commit 6db99e775a
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:05:34 2026 -0300
docs(stock): document centralized reservation flow
commit e5f7ba3615
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:05:29 2026 -0300
test(stock): cover aggregate reservation lifecycle
commit 24bfef431b
Author: ncoronel <ncoronel@quo.ar >
Date: Tue Aug 25 15:05:23 2026 -0300
refactor(stock): centralize reservation aggregate
2026-08-27 10:06:41 -03:00
79e721ae63
refactor(checkout): disable purchase item editing
2026-08-21 11:03:48 -03:00
161693509f
feat(telepagos): enhance webhook handling
2026-08-19 15:26:44 -03:00
58cbeae9d3
Squashed commit of the following:
...
commit 1dc4e29c69
Author: ncoronel <ncoronel@quo.ar >
Date: Wed Aug 19 13:58:03 2026 -0300
refactor(reservations): unify expiration command
commit 093e894cc3
Author: ncoronel <ncoronel@quo.ar >
Date: Wed Aug 19 13:48:09 2026 -0300
feat(cart): expire abandoned stock reservations
commit fdf0f3328f
Author: ncoronel <ncoronel@quo.ar >
Date: Wed Aug 19 12:53:12 2026 -0300
refactor(stock): implement expiration for stock reservations and add configuration
commit 8d6bcdcc43
Author: ncoronel <ncoronel@quo.ar >
Date: Wed Aug 19 12:38:21 2026 -0300
refactor(cart): invalidate payment on actual changes
commit 3206e293eb
Author: ncoronel <ncoronel@quo.ar >
Date: Wed Aug 19 12:24:48 2026 -0300
refactor(cart): own checkout item editing
commit aed99bd05e
Author: ncoronel <ncoronel@quo.ar >
Date: Wed Aug 19 12:14:57 2026 -0300
refactor(checkout): remove legacy purchase item reservations
commit f1649e0e4b
Author: ncoronel <ncoronel@quo.ar >
Date: Wed Aug 19 12:06:29 2026 -0300
refactor(checkout): materialize purchase items on confirmation
commit e6c4b40a37
Author: ncoronel <ncoronel@quo.ar >
Date: Wed Aug 19 12:06:19 2026 -0300
feat(inventory): add traceable cart stock reservations
2026-08-19 13:59:25 -03:00
d73b4d1daf
feat: Introduce client management and integration updates
...
- Added client_id field to StoreTenantRequest and UpdateTenantRequest for tenant management.
- Updated TenantResource to include client_id in the response.
- Created migration to establish clients table and link tenants to clients.
- Migrated existing tenant integrations to client_integrations table.
- Grouped specific tenants under a shared client (OnTicket) in a new migration.
- Updated seeders to reflect new client structure and relationships.
- Adjusted integration configurations to require client instead of tenant.
- Added tests for client integration functionality and ensured existing tests reflect the new client structure.
2026-08-18 16:18:34 -03:00
02cf3f3773
Add tests for ticket validity and event date formatting
...
- Create TicketValiditySchemaTest to verify database schema for ticket validity.
- Update CatalogModelsTest to include tests for event date attributes and selection options.
- Introduce EventDateTextFormatterTest for formatting event dates in Spanish.
- Refactor EventModelsTest to include validity time relationships.
- Add SaleDetailResourceTest to ensure correct serialization of purchase items.
- Enhance TicketTest with validity time checks and status management.
- Implement ValidityTimeResourceTest to validate resource output for different validity types.
- Add ValidityTimeTest to verify casting and validity checks for validity time types.
2026-08-11 12:41:35 -03:00
96f26e2e9d
feat: Remove 'in_review' status from purchase workflow; implement logging for status changes and update related tests
2026-08-03 17:04:39 -03:00
45553dc514
feat(purchase): add review submission for pending purchases and update related logic
2026-07-29 09:11:00 -03:00
5107d858cc
fix(ticket): temporarily disable maximum use date validation in ticket generation
2026-07-27 17:01:08 -03:00
8b26a2b63e
feat(purchase): add checkout expiration settings and reservation status to purchase items
...
- Introduced a new configuration file for purchase settings, including checkout and payment expiration times.
- Added a migration to include a `reservation_status` column in the `compra_items` table, defaulting to 'active' and updating existing records based on purchase status.
- Created a migration to add an `expires_at` timestamp to the `compras` table, updating it for existing records based on their status.
- Scoped unique indexes in the `carritos` table to only active carts, adding virtual columns for active user and guest tokens.
- Implemented a console command to expire overdue purchases and release stock reservations, scheduled to run every minute.
- Added tests for Google token exchange and login functionality, ensuring proper cart handling and user authentication.
- Updated purchase-related tests to reflect changes in item handling and customer data validation.
2026-07-27 12:49:27 -03:00
528772fc96
feat(notification): implement email notifications for user registration and purchase events
2026-07-22 09:54:19 -03:00
29a2ca19a3
refactor(catalog): Complete catalog refactor to simplify its data model and its querying.
...
source commits: refactor/catalog
2026-07-21 09:23:19 -03:00
84c9fa4c9d
feat: update purchase status to pending payment in payment intent and related test
2026-07-16 12:13:48 -03:00
b3d06431e5
feat: rename payer_dni to transfer_payer_dni across purchase handling and update related tests
2026-07-16 11:45:34 -03:00
379c2bdbeb
Merge branch 'dev' of https://gitea.quo.ar/tbianchini/shopit-back into dev
2026-07-16 10:00:12 -03:00
6fc6ed1fac
feat: refactor cart and purchase handling to support polymorphic buyable types and improve code readability
2026-07-16 09:55:38 -03:00
10157d7c63
feat: Implement inventory policy for product variants
...
- Introduced InventoryPolicy enum to manage tracked and unlimited inventory types.
- Updated ProductVariant model to include inventory_policy and cantidad_vendida attributes.
- Modified addItem and updateItem methods in Cart to check available quantity based on inventory policy.
- Added migration to include inventory_policy and cantidad_vendida in productos_variantes table.
- Enhanced tests to validate inventory behavior for both tracked and unlimited policies.
- Updated various request and resource classes to handle new inventory fields.
2026-07-16 08:36:59 -03:00
ca7a2ae55c
feat: add payer_dni field and validation for transfer payments, update related logic and tests
2026-07-12 19:48:56 +00:00
f18fbc8147
feat: rename finalize methods to complete for consistency in purchase processing
2026-07-07 15:36:07 -03:00
c276ccd311
feat: refactor purchase status handling and add finalize endpoint for purchases
2026-07-07 15:33:29 -03:00
7b2a741884
feat: add total field to purchases and update related logic for payment processing
2026-07-07 10:16:28 -03:00