@dizzlkheinz/ynab-mcpb 0.15.1 → 0.16.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/CLAUDE.md +113 -18
  3. package/README.md +19 -4
  4. package/dist/bundle/index.cjs +53 -52
  5. package/dist/server/YNABMCPServer.d.ts +2 -6
  6. package/dist/server/YNABMCPServer.js +5 -1
  7. package/dist/server/resources.d.ts +17 -13
  8. package/dist/server/resources.js +237 -48
  9. package/dist/tools/reconcileAdapter.d.ts +1 -0
  10. package/dist/tools/reconcileAdapter.js +1 -0
  11. package/dist/tools/reconciliation/csvParser.d.ts +3 -0
  12. package/dist/tools/reconciliation/csvParser.js +58 -19
  13. package/dist/tools/reconciliation/executor.js +47 -1
  14. package/dist/tools/reconciliation/index.js +82 -42
  15. package/dist/tools/reconciliation/reportFormatter.d.ts +1 -0
  16. package/dist/tools/reconciliation/reportFormatter.js +49 -36
  17. package/dist/tools/transactionTools.js +5 -0
  18. package/docs/reference/API.md +144 -0
  19. package/docs/technical/reconciliation-system-architecture.md +2251 -0
  20. package/package.json +1 -1
  21. package/src/server/YNABMCPServer.ts +7 -0
  22. package/src/server/__tests__/resources.template.test.ts +198 -0
  23. package/src/server/__tests__/resources.test.ts +10 -2
  24. package/src/server/resources.ts +307 -62
  25. package/src/tools/__tests__/transactionTools.test.ts +90 -17
  26. package/src/tools/reconcileAdapter.ts +2 -0
  27. package/src/tools/reconciliation/__tests__/reportFormatter.test.ts +23 -23
  28. package/src/tools/reconciliation/csvParser.ts +84 -18
  29. package/src/tools/reconciliation/executor.ts +58 -1
  30. package/src/tools/reconciliation/index.ts +105 -55
  31. package/src/tools/reconciliation/reportFormatter.ts +55 -37
  32. package/src/tools/transactionTools.ts +10 -0
  33. package/.dxtignore +0 -57
  34. package/CODEREVIEW_RESPONSE.md +0 -128
  35. package/SCHEMA_IMPROVEMENT_SUMMARY.md +0 -120
  36. package/TESTING_NOTES.md +0 -217
  37. package/accountactivity-merged.csv +0 -149
  38. package/bundle-analysis.html +0 -13110
  39. package/docs/plans/2025-11-20-reloadable-config-token-validation.md +0 -93
  40. package/docs/plans/2025-11-21-fix-transaction-cached-property.md +0 -362
  41. package/docs/plans/2025-11-21-reconciliation-error-handling.md +0 -90
  42. package/docs/plans/2025-11-21-v014-hardening.md +0 -153
  43. package/docs/plans/reconciliation-v2-redesign.md +0 -1571
  44. package/fix-types.sh +0 -17
  45. package/test-csv-sample.csv +0 -28
  46. package/test-exports/sample_bank_statement.csv +0 -7
  47. package/test-reconcile-autodetect.js +0 -40
  48. package/test-reconcile-tool.js +0 -152
  49. package/test-reconcile-with-csv.cjs +0 -89
  50. package/test-statement.csv +0 -8
  51. package/test_debug.js +0 -47
  52. package/test_mcp_tools.mjs +0 -75
  53. package/test_simple.mjs +0 -16
package/TESTING_NOTES.md DELETED
@@ -1,217 +0,0 @@
1
- # MCP Testing Progress Notes
2
-
3
- **Date:** 2025-11-16
4
- **Context:** Testing YNAB MCP server directly through MCP interface
5
-
6
- ## ✅ Completed Testing
7
-
8
- ### Basic Operations (All Working)
9
-
10
- 1. **Budget Operations**
11
- - ✅ `list_budgets` - Successfully retrieved all budgets
12
- - ✅ `get_budget` - Successfully retrieved specific budget details (now returns counts instead of full arrays)
13
- - ✅ `set_default_budget` & `get_default_budget` - Successfully set and retrieved default budget
14
-
15
- 2. **Account Operations**
16
- - ✅ `list_accounts` - Successfully listed all accounts with new `limit` parameter and count metadata
17
- - ✅ `get_account` - Successfully retrieved specific account details
18
-
19
- 3. **Transaction Operations**
20
- - ✅ `list_transactions` - Successfully listed transactions with filters
21
- - ✅ `get_transaction` - Successfully retrieved specific transaction with enriched data
22
- - ✅ `create_transaction` - Successfully created test transaction (with dry-run validation)
23
- - ✅ `update_transaction` - Successfully updated transaction
24
- - ✅ `delete_transaction` - Successfully deleted transaction
25
-
26
- 4. **Category & Payee Operations**
27
- - ✅ `list_categories` - Successfully listed all categories with groups
28
- - ✅ `list_payees` - Successfully listed payees with new `limit` parameter and count metadata
29
-
30
- 5. **Utility Operations**
31
- - ✅ `convert_amount` - Successfully converted between dollars and milliunits
32
- - ✅ `diagnostic_info` - Successfully retrieved comprehensive system diagnostics
33
-
34
- 6. **Export Operations**
35
- - ✅ `export_transactions` - Successfully exported transactions to JSON file (minimal mode tested)
36
-
37
- ### Issues Found & Fixed
38
-
39
- #### Session 1
40
-
41
- 1. **budgetTools.test.ts** - Test expected old response format with full arrays
42
- - Fixed in commit (updated test to expect `accounts_count` instead of `accounts`, etc.)
43
- - All 1078 tests now passing
44
-
45
- #### Session 2
46
-
47
- 2. **reconcile_account creating double transactions** - Batch update including unnecessary fields
48
- - **Root Cause**: The `reconcile_account` tool was including ALL transaction fields (amount, payee_name, memo, account_id, approved) in the batch update payload when updating cleared status or dates. Including unnecessary fields (especially memo) can cause YNAB API to exhibit unexpected behavior, potentially creating duplicate transactions.
49
- - **Fix**: Modified `src/tools/reconciliation/executor.ts` to only include the transaction ID and the fields that are actually changing (cleared status and/or date). This creates a minimal update payload following API best practices for partial updates.
50
- - **Impact**: Prevents duplicate/ghost transactions with $0 balances when reconciling accounts
51
- - **Testing**:
52
- - All 1078 unit tests passing
53
- - Real MCP test: reconciled with auto_match_threshold=30, 1 transaction updated, no duplicates created
54
- - Verified clean transaction list with no ghost transactions
55
- - **File Changed**: `src/tools/reconciliation/executor.ts` (lines 455-467, 546)
56
- - **Released**: v0.11.2 (2025-11-16)
57
- - **Commit**: e0d9d33
58
-
59
- ### Code Changes Made
60
-
61
- #### Session 1
62
-
63
- - `src/tools/accountTools.ts` - Added `limit` parameter and count metadata
64
- - `src/tools/budgetTools.ts` - Optimized to return counts instead of full arrays
65
- - `src/tools/payeeTools.ts` - Added `limit` parameter and count metadata
66
- - `src/tools/__tests__/budgetTools.test.ts` - Updated test expectations
67
-
68
- #### Session 2
69
-
70
- - `src/tools/reconciliation/executor.ts` - Fixed batch update to only include changed fields (prevents duplicate transactions)
71
-
72
- ## ✅ Advanced Tools Testing (Session 2)
73
-
74
- ### Successfully Tested
75
-
76
- 1. **compare_transactions** ✅
77
- - CSV auto-detection working perfectly
78
- - Parsed 6 bank transactions from test CSV
79
- - Compared with YNAB transactions
80
- - Found 4 matches, 2 missing in YNAB, 12 missing in bank
81
- - Match scoring and suggestions working correctly
82
-
83
- 2. **reconcile_account** ✅
84
- - Comprehensive guided reconciliation narrative
85
- - Balance discrepancy analysis ($3,628.28 difference detected)
86
- - Transaction matching statistics (0 auto-matched, 6 unmatched bank, 105 unmatched YNAB)
87
- - Key insights and recommendations provided
88
- - Dry run mode working correctly
89
- - Human-readable report format excellent
90
- - **Bug fix verified**: Tested with real updates (1 transaction updated), no duplicates created
91
-
92
- 3. **get_month** / **list_months** ✅
93
- - `list_months` returns summary of all months with income/budgeted/activity/age of money
94
- - `get_month` returns detailed category breakdowns for specific month
95
- - Both tools working perfectly with proper caching info
96
-
97
- 4. **get_category** ✅
98
- - Successfully retrieved category details
99
- - Includes budgeted amount, activity, balance, goal information
100
- - Cache info included in response
101
-
102
- 5. **update_category** ✅
103
- - Dry run validation working correctly
104
- - Amount conversion from milliunits to dollars working
105
- - Returns preview of update request
106
-
107
- 6. **get_user** ✅
108
- - Successfully retrieves user information
109
- - Returns user ID
110
-
111
- 7. **set_output_format** ✅
112
- - Successfully configures JSON output formatting
113
- - Can toggle minify mode and set pretty-print spacing
114
- - Confirmed settings update
115
-
116
- 8. **clear_cache** ✅
117
- - Successfully clears in-memory cache
118
- - Returns success confirmation
119
-
120
- 9. **get_payee** ✅ (error handling verified)
121
- - Error handling working correctly (tested with invalid payee ID)
122
- - Returns proper 404 error with helpful suggestions
123
-
124
- ## 🔄 To Continue Testing
125
-
126
- ### Advanced Tools (Not Yet Tested)
127
-
128
- 1. **create_transactions** (batch) - Bulk transaction creation (MCP parameter serialization issue - needs different approach)
129
- 2. **update_transactions** (batch) - Bulk transaction updates (same serialization issue)
130
- 3. **create_receipt_split_transaction** - Receipt splitting with tax allocation
131
-
132
- ### Test Budget Info
133
-
134
- - Default Budget ID: `bf00f94f-f532-4b2c-a39c-e8d9a963effd` (name: "2025")
135
- - Test Account ID: `4c18e9f0-8aa6-4427-98f5-55ce81d109cf` (name: "🍊✔️ Tang Cheq")
136
-
137
- ## 📋 Build Status
138
-
139
- - ✅ TypeScript type checking passes
140
- - ✅ All 1078 unit tests passing (47 test files)
141
- - ✅ Build successful
142
- - ✅ MCPB package generated: `ynab-mcp-server-0.11.2.mcpb`
143
- - ✅ Bug fix release v0.11.2 tagged and pushed
144
-
145
- ## 🎯 Testing Summary
146
-
147
- ### Session 1 - Basic Operations (All Passing ✅)
148
-
149
- - Budget operations (list, get, set/get default)
150
- - Account operations (list, get)
151
- - Transaction operations (list, get, create, update, delete)
152
- - Category operations (list)
153
- - Payee operations (list)
154
- - Utility operations (convert_amount, diagnostic_info)
155
- - Export operations (export_transactions)
156
-
157
- ### Session 2 - Advanced Operations (9/12 Tested ✅)
158
-
159
- - ✅ compare_transactions - CSV comparison working perfectly
160
- - ✅ reconcile_account - Comprehensive reconciliation with insights
161
- - ✅ get_month / list_months - Monthly budget data working
162
- - ✅ get_category - Category details retrieval working
163
- - ✅ update_category - Category budget updates with dry-run
164
- - ✅ get_user - User information retrieval
165
- - ✅ set_output_format - JSON formatting configuration
166
- - ✅ clear_cache - Cache management working
167
- - ✅ get_payee - Error handling verified (404 response correct)
168
- - ⏸️ create_transactions (batch) - MCP parameter serialization limitation
169
- - ⏸️ update_transactions (batch) - MCP parameter serialization limitation
170
- - ⏸️ create_receipt_split_transaction - Not yet tested
171
-
172
- ### Overall Status
173
-
174
- - **21 out of 24 tools fully tested and working** ✅
175
- - **3 tools remaining** (2 blocked by MCP limitation, 1 pending)
176
- - All tested tools functioning correctly
177
- - Error handling working properly
178
- - Cache system operational
179
- - Delta fetcher integration working
180
- - Response formatting functional
181
-
182
- ## 🎯 Next Steps
183
-
184
- When resuming:
185
-
186
- 1. Test `create_receipt_split_transaction` with sample receipt data
187
- 2. For batch operations, consider testing via unit/integration tests instead of MCP interface
188
- 3. Verify error handling and edge cases for remaining complex tools
189
- 4. Consider performance testing with larger datasets
190
-
191
- ## 💡 Notes
192
-
193
- - MCP interface is working correctly for all non-batch operations
194
- - All basic CRUD operations function as expected
195
- - Cache system is working (invalidation and TTL working correctly)
196
- - Delta fetcher integration working properly
197
- - Response formatting (minify/pretty) working - can be toggled via set_output_format
198
- - Rate limiting active and tracking requests
199
- - Error responses are consistent and helpful
200
- - CSV auto-detection in compare/reconcile tools is robust
201
- - Reconciliation narrative format is excellent and user-friendly
202
- - **Reconciliation bug fix validated**: Minimal update payloads prevent duplicate transactions
203
-
204
- ## 🐛 Known Issues & Fixes
205
-
206
- ### Fixed in v0.11.2
207
-
208
- - **Duplicate transactions in reconciliation**: Fixed by sending only changed fields in batch updates
209
- - Issue: Including unnecessary fields (amount, payee_name, memo, account_id) caused YNAB to create ghost transactions
210
- - Solution: Minimal update payloads with only transaction ID + changed fields
211
- - Status: ✅ Fixed, tested, and released
212
-
213
- ## 📦 Release History
214
-
215
- - **v0.11.2** (2025-11-16) - Bug fix: Prevent duplicate transactions in reconcile_account
216
- - **v0.11.1** - Added invert_bank_amounts parameter to reconcile_account
217
- - **v0.11.0** - Initial advanced reconciliation features
@@ -1,149 +0,0 @@
1
- Transaction Date,Posting Date,Description,Amount,Rewards,Currency
2
- 2024-12-14,2024-12-14,TIM HORTONS #1302 SUDBURY ON,-3.03,,
3
- 2024-12-13,2024-12-15,TIM HORTONS #1302 SUDBURY ON,-3.28,,
4
- 2024-12-13,2024-12-15,EVOCARSHARE SUDBURY ON,-22.22,,
5
- 2024-12-13,2024-12-15,TIM HORTONS #1302 SUDBURY ON,-3.62,,
6
- 2024-12-13,2024-12-15,FD IN&OUT SAULT STE SUDBURY ON,-26.68,,
7
- 2024-12-12,2024-12-14,METRO #383 SUDBURY ON,-11.03,,
8
- 2024-12-12,2024-12-14,ESSO SUDBURY ON,-16.98,,
9
- 2024-12-12,2024-12-14,TIM HORTONS #1302 SUDBURY ON,-4.16,,
10
- 2024-12-12,2024-12-14,BEER STORE - 417 SUDBURY ON,-40.50,,
11
- 2024-12-11,2024-12-12,TIM HORTONS #1302 SUDBURY ON,-3.50,,
12
- 2024-12-11,2024-12-12,FRESHII - SUDBURY SUDBURY ON,-15.81,,
13
- 2024-12-10,2024-12-11,TIM HORTONS #1302 SUDBURY ON,-3.62,,
14
- 2024-12-10,2024-12-11,EVOCARSHARE SUDBURY ON,-22.22,,
15
- 2024-12-10,2024-12-11,ESSO SUDBURY ON,-19.99,,
16
- 2024-12-10,2024-12-11,CANADIAN TIRE #00472SUDBURY ON,-106.18,,
17
- 2024-12-09,2024-12-10,TIM HORTONS #1302 SUDBURY ON,-3.62,,
18
- 2024-12-09,2024-12-10,TIM HORTONS #1302 SUDBURY ON,-2.84,,
19
- 2024-12-09,2024-12-10,AMZN MKTP CA*MZ7P17 WWW.AMAZON.CA/BILON,-39.04,3.12,
20
- 2024-12-07,2024-12-09,TIM HORTONS #1302 SUDBURY ON,-4.16,,
21
- 2024-12-07,2024-12-09,BEER STORE - 417 SUDBURY ON,-62.75,,
22
- 2024-12-06,2024-12-07,TIM HORTONS #1302 SUDBURY ON,-3.62,,
23
- 2024-12-06,2024-12-07,TIM HORTONS #1302 SUDBURY ON,-3.28,,
24
- 2024-12-06,2024-12-07,EVOCARSHARE SUDBURY ON,-22.22,,
25
- 2024-12-06,2024-12-07,FIVE GUYS BURGERS ANSUDBURY ON,-26.05,,
26
- 2024-12-05,2024-12-06,TIM HORTONS #1302 SUDBURY ON,-3.50,,
27
- 2024-12-04,2024-12-05,TIM HORTONS #1302 SUDBURY ON,-3.62,,
28
- 2024-12-04,2024-12-05,A&W #2854 SUDBURY ON,-15.49,,
29
- 2024-12-04,2024-12-05,EVOCARSHARE SUDBURY ON,-22.22,,
30
- 2024-12-03,2024-12-04,TIM HORTONS #1302 SUDBURY ON,-4.16,,
31
- 2024-12-03,2024-12-04,AMZN MKTP CA*MZ1I80 WWW.AMAZON.CA/BILON,-15.57,1.25,
32
- 2024-12-02,2024-12-03,TIM HORTONS #1302 SUDBURY ON,-3.62,,
33
- 2024-12-02,2024-12-03,TIM HORTONS #1302 SUDBURY ON,-3.62,,
34
- 2024-12-02,2024-12-03,TIM HORTONS #1302 SUDBURY ON,-3.62,,
35
- 2024-12-02,2024-12-04,CANADA POST 20 BRADY SUDBURY ON,-58.44,,
36
- 2024-12-01,2024-12-02,AMZN MKTP CA*MZ7RX3 WWW.AMAZON.CA/BILON,-66.57,5.33,
37
- 2024-11-30,2024-12-01,TIM HORTONS #1302 SUDBURY ON,-3.62,,
38
- 2024-11-29,2024-11-30,FRESHII - SUDBURY SUDBURY ON,-20.36,,
39
- 2024-11-29,2024-11-30,TIM HORTONS #1302 SUDBURY ON,-3.62,,
40
- 2024-11-29,2024-11-30,TIM HORTONS #1302 SUDBURY ON,-3.03,,
41
- 2024-11-29,2024-11-30,EVOCARSHARE SUDBURY ON,-22.22,,
42
- 2024-11-28,2024-11-29,TIM HORTONS #1302 SUDBURY ON,-3.62,,
43
- 2024-11-28,2024-11-29,ESSO SUDBURY ON,-51.30,,
44
- 2024-11-28,2024-11-29,ESSO SUDBURY ON,-5.00,,
45
- 2024-11-28,2024-12-01,PAYMENT RECEIVED - THANK YOU/PAIEMENT RECU - MERCI,1917.02,,
46
- 2024-11-27,2024-11-28,TIM HORTONS #1302 SUDBURY ON,-3.62,,
47
- 2024-11-27,2024-11-28,METRO #383 SUDBURY ON,-23.90,,
48
- 2024-11-27,2024-11-28,TIM HORTONS #1302 SUDBURY ON,-3.28,,
49
- 2024-11-27,2024-11-28,EVOCARSHARE SUDBURY ON,-22.22,,
50
- 2024-11-26,2024-11-27,TIM HORTONS #1302 SUDBURY ON,-3.62,,
51
- 2024-11-26,2024-11-27,AMZN MKTP CA*MZ3E06 WWW.AMAZON.CA/BILON,-52.21,4.18,
52
- 2024-11-25,2024-11-26,TIM HORTONS #1302 SUDBURY ON,-3.50,,
53
- 2024-11-25,2024-11-26,METRO #383 SUDBURY ON,-15.84,,
54
- 2024-11-25,2024-11-26,TIM HORTONS #1302 SUDBURY ON,-3.62,,
55
- 2024-11-22,2024-11-25,BEER STORE - 417 SUDBURY ON,-53.45,,
56
- 2024-11-22,2024-11-23,TIM HORTONS #1302 SUDBURY ON,-3.62,,
57
- 2024-11-22,2024-11-23,EVOCARSHARE SUDBURY ON,-22.22,,
58
- 2024-11-22,2024-11-23,TIM HORTONS #1302 SUDBURY ON,-3.28,,
59
- 2024-11-21,2024-11-22,TIM HORTONS #1302 SUDBURY ON,-4.16,,
60
- 2024-11-21,2024-11-22,AMZN MKTP CA*MZ67I0 WWW.AMAZON.CA/BILON,-89.52,7.16,
61
- 2024-11-20,2024-11-21,EVOCARSHARE SUDBURY ON,-22.22,,
62
- 2024-11-20,2024-11-21,TIM HORTONS #1302 SUDBURY ON,-3.28,,
63
- 2024-11-20,2024-11-21,TIM HORTONS #1302 SUDBURY ON,-3.50,,
64
- 2024-11-20,2024-11-21,TIM HORTONS #1302 SUDBURY ON,-3.62,,
65
- 2024-11-19,2024-11-20,TIM HORTONS #1302 SUDBURY ON,-3.62,,
66
- 2024-11-19,2024-11-20,HOME DEPOT #7259 SUDBURY ON,-36.15,,
67
- 2024-11-19,2024-11-20,HOME HARDWARE 1189 SUNDRIDGE ON,-85.38,,
68
- 2024-11-19,2024-11-20,ESSO SUNDRIDGE ON,-90.66,,
69
- 2024-11-19,2024-11-20,ESSO SUNDRIDGE ON,-100.00,,
70
- 2024-11-19,2024-11-20,FRESHII - SUDBURY SUDBURY ON,-15.81,,
71
- 2024-11-18,2024-11-19,EVOCARSHARE SUDBURY ON,-22.22,,
72
- 2024-11-18,2024-11-19,TIM HORTONS #1302 SUDBURY ON,-3.28,,
73
- 2024-11-15,2024-11-18,TIM HORTONS #1302 SUDBURY ON,-3.62,,
74
- 2024-11-15,2024-11-16,EVOCARSHARE SUDBURY ON,-22.22,,
75
- 2024-11-15,2024-11-16,KELSEY'S - 0126 SUDBURY ON,-37.35,,
76
- 2024-11-15,2024-11-16,HOME DEPOT #7259 SUDBURY ON,-48.02,,
77
- 2024-11-14,2024-11-15,TIM HORTONS #1302 SUDBURY ON,-3.62,,
78
- 2024-11-14,2024-11-15,TIM HORTONS #1302 SUDBURY ON,-3.62,,
79
- 2024-11-13,2024-11-14,TIM HORTONS #1302 SUDBURY ON,-3.62,,
80
- 2024-11-13,2024-11-14,TIM HORTONS #1302 SUDBURY ON,-3.62,,
81
- 2024-11-13,2024-11-14,TIM HORTONS #1302 SUDBURY ON,-4.16,,
82
- 2024-11-12,2024-11-13,TIM HORTONS #1302 SUDBURY ON,-3.62,,
83
- 2024-11-12,2024-11-13,TIM HORTONS #1302 SUDBURY ON,-3.62,,
84
- 2024-11-12,2024-11-13,TIM HORTONS #1302 SUDBURY ON,-3.62,,
85
- 2024-11-12,2024-11-13,EVOCARSHARE SUDBURY ON,-22.22,,
86
- 2024-11-11,2024-11-12,TIM HORTONS #1302 SUDBURY ON,-3.28,,
87
- 2024-11-11,2024-11-12,TIM HORTONS #1302 SUDBURY ON,-3.28,,
88
- 2024-11-11,2024-11-12,TIM HORTONS #1302 SUDBURY ON,-3.28,,
89
- 2024-11-08,2024-11-09,TIM HORTONS #1302 SUDBURY ON,-4.16,,
90
- 2024-11-08,2024-11-09,BEER STORE - 417 SUDBURY ON,-40.50,,
91
- 2024-11-07,2024-11-08,TIM HORTONS #1302 SUDBURY ON,-3.62,,
92
- 2024-11-07,2024-11-08,METRO #383 SUDBURY ON,-23.79,,
93
- 2024-11-06,2024-11-07,TIM HORTONS #1302 SUDBURY ON,-3.62,,
94
- 2024-11-06,2024-11-07,TIM HORTONS #1302 SUDBURY ON,-3.28,,
95
- 2024-11-06,2024-11-07,EVOCARSHARE SUDBURY ON,-22.22,,
96
- 2024-11-06,2024-11-07,AMZN MKTP CA*MZ59F9 WWW.AMAZON.CA/BILON,-54.56,4.36,
97
- 2024-11-05,2024-11-06,TIM HORTONS #1302 SUDBURY ON,-3.28,,
98
- 2024-11-05,2024-11-06,TIM HORTONS #1302 SUDBURY ON,-3.62,,
99
- 2024-11-04,2024-11-05,TIM HORTONS #1302 SUDBURY ON,-3.62,,
100
- 2024-11-04,2024-11-05,TIM HORTONS #1302 SUDBURY ON,-3.50,,
101
- 2024-11-04,2024-11-05,TIM HORTONS #1302 SUDBURY ON,-3.62,,
102
- 2024-11-04,2024-11-05,EVOCARSHARE SUDBURY ON,-22.22,,
103
- 2024-11-01,2024-11-02,TIM HORTONS #1302 SUDBURY ON,-4.16,,
104
- 2024-11-01,2024-11-02,BEER STORE - 417 SUDBURY ON,-68.00,,
105
- 2024-10-31,2024-11-01,TIM HORTONS #1302 SUDBURY ON,-3.62,,
106
- 2024-10-31,2024-11-01,TIM HORTONS #1302 SUDBURY ON,-3.28,,
107
- 2024-10-31,2024-11-01,EVOCARSHARE SUDBURY ON,-22.22,,
108
- 2024-10-31,2024-11-01,TIM HORTONS #1302 SUDBURY ON,-3.62,,
109
- 2024-10-30,2024-10-31,TIM HORTONS #1302 SUDBURY ON,-3.62,,
110
- 2024-10-30,2024-10-31,TIM HORTONS #1302 SUDBURY ON,-3.62,,
111
- 2024-10-30,2024-10-31,TIM HORTONS #1302 SUDBURY ON,-3.62,,
112
- 2024-10-29,2024-10-30,TIM HORTONS #1302 SUDBURY ON,-3.62,,
113
- 2024-10-29,2024-10-30,TIM HORTONS #1302 SUDBURY ON,-3.28,,
114
- 2024-10-29,2024-10-30,EVOCARSHARE SUDBURY ON,-22.22,,
115
- 2024-10-28,2024-10-29,TIM HORTONS #1302 SUDBURY ON,-3.62,,
116
- 2024-10-28,2024-10-29,AMZN MKTP CA*MZ6VH9 WWW.AMAZON.CA/BILON,-53.85,4.31,
117
- 2024-10-25,2024-10-26,TIM HORTONS #1302 SUDBURY ON,-4.16,,
118
- 2024-10-25,2024-10-27,BEER STORE - 417 SUDBURY ON,-62.75,,
119
- 2024-10-24,2024-10-26,AMZN MKTP CA*MZ2OI1 WWW.AMAZON.CA/BILON,-39.57,3.17,
120
- 2024-10-24,2024-10-25,TIM HORTONS #1302 SUDBURY ON,-3.62,,
121
- 2024-10-24,2024-10-25,TIM HORTONS #1302 SUDBURY ON,-3.28,,
122
- 2024-10-24,2024-10-25,EVOCARSHARE SUDBURY ON,-22.22,,
123
- 2024-10-24,2024-10-25,AMZN MKTP CA*MZ54K8 WWW.AMAZON.CA/BILON,-19.59,1.57,
124
- 2024-10-23,2024-10-24,TIM HORTONS #1302 SUDBURY ON,-3.62,,
125
- 2024-10-22,2024-10-23,TIM HORTONS #1302 SUDBURY ON,-3.62,,
126
- 2024-10-22,2024-10-23,EVOCARSHARE SUDBURY ON,-22.22,,
127
- 2024-10-21,2024-10-22,SWISS CHALET SUDBURY ON,-34.86,,
128
- 2024-10-21,2024-10-22,TIM HORTONS #1302 SUDBURY ON,-3.28,,
129
- 2024-10-18,2024-10-19,TIM HORTONS #1302 SUDBURY ON,-4.16,,
130
- 2024-10-18,2024-10-19,BEER STORE - 417 SUDBURY ON,-58.70,,
131
- 2024-10-17,2024-10-18,METRO #383 SUDBURY ON,-45.84,,
132
- 2024-10-17,2024-10-18,TIM HORTONS #1302 SUDBURY ON,-3.28,,
133
- 2024-10-17,2024-10-18,EVOCARSHARE SUDBURY ON,-22.22,,
134
- 2024-10-17,2024-10-18,TIM HORTONS #1302 SUDBURY ON,-3.62,,
135
- 2024-10-16,2024-10-17,TIM HORTONS #1302 SUDBURY ON,-3.62,,
136
- 2024-10-16,2024-10-17,TIM HORTONS #1302 SUDBURY ON,-3.62,,
137
- 2024-10-16,2024-10-17,HOME DEPOT #7259 SUDBURY ON,-60.71,,
138
- 2024-10-15,2024-10-16,TIM HORTONS #1302 SUDBURY ON,-3.62,,
139
- 2024-10-15,2024-10-16,TIM HORTONS #1302 SUDBURY ON,-3.62,,
140
- 2024-10-15,2024-10-16,EVOCARSHARE SUDBURY ON,-22.22,,
141
- 2024-10-15,2024-10-16,TIM HORTONS #1302 SUDBURY ON,-3.62,,
142
- 2024-10-15,2024-10-16,IKEA OTTAWA FRONT OTTAWA ON,-83.88,,
143
- 2024-10-14,2024-10-15,TIM HORTONS #1302 SUDBURY ON,-3.28,,
144
- 2024-10-11,2024-10-12,TIM HORTONS #1302 SUDBURY ON,-4.16,,
145
- 2024-10-11,2024-10-13,BEER STORE - 417 SUDBURY ON,-62.75,,
146
- 2024-10-11,2024-10-12,ESSO SUDBURY ON,-88.31,,
147
- 2024-10-10,2024-10-11,EVOCARSHARE SUDBURY ON,-22.22,,
148
- 2024-10-10,2024-10-11,TIM HORTONS #1302 SUDBURY ON,-3.28,,
149
- 2024-10-10,2024-10-11,TIM HORTONS #1302 SUDBURY ON,-3.62,,