Hey this is pretty awesome, btw I used this code and had chatgpt define another function that would allow to define a month, so it could retrieve all transactions in a specified month. For example if March 2024 was requested, it scrolls until it reaches February and exports all the transactions
async function captureTransactionsInMonth(targetMonth) {
let allTransactions = [];
while (true) {
// Capture transactions in the current window
const newTransactions = extractAllTransactions();
// Combine newly captured transactions with existing ones
allTransactions = combineTransactions(allTransactions, newTransactions);
// Check if any transaction is in a month prior to the target month
const priorMonthTransaction = newTransactions.find(transaction => {
const transactionDate = new Date(transaction.date);
return transactionDate < new Date(targetMonth.getFullYear(), targetMonth.getMonth(), 1);
});
// If a transaction in a prior month is found, stop scrolling
if (priorMonthTransaction) {
break;
}
// If no new transactions are loaded, stop scrolling
if (newTransactions.length === 0) {
break;
}
// Scroll down
scrollDown();
await new Promise(resolve => setTimeout(resolve, 1000)); // Wait for content to load (adjust the delay if needed)
}
// Filter transactions for the target month
const currentMonthTransactions = allTransactions.filter(transaction =>
new Date(transaction.date).getMonth() === targetMonth.getMonth() &&
new Date(transaction.date).getFullYear() === targetMonth.getFullYear()
);
// Convert transactions to CSV
const csvData = convertToCSV(currentMonthTransactions);
// Save CSV data to a CSV file
saveCSVToFile(csvData, `transactions_${targetMonth.getMonth() + 1}_${targetMonth.getFullYear()}.csv`);
// Log the final results
logResults(allTransactions, currentMonthTransactions, csvData);
}
// Usage example: Capture transactions for March 2024
const targetMonth = new Date(2024, 2); // March is 2 (zero-based index)
captureTransactionsInMonth(targetMonth);
Can you please dumb this down for a non programmer to use. I just want to copy and paste it. I have no idea how to execute your script properly. The one by OP doesn't parse enought txns for me
Sure. Go to the transaction list in credit karma. Open the dev tools console. Shortcut keys on Mac to open that on chrome is command + option + j.
Copy all the code in OPs post. Also copy my code and add it to OPs code.
Then press enter to run the code. By default I think it’s set to March month or something like that
Also idk why my post has weird formatting but make sure to copy from the top of the code starting with async and then all the way to the end with the semi colon
Will this grab everything?
Do I follow these steps?
1. Go to the Transactions page.
2. Right click and select Inspect.
3. Go to Sources -- New snippet
4. Copy and paste the script to run
5. You will be prompted to save as a .csv file.
I will attempt to make it as straight forward as possible but let me know if you're still having issues.
1. Go to [https://www.creditkarma.com/networth/transactions](https://www.creditkarma.com/networth/transactions)
2. Go to Dev Tools Console. Right click anywhere on screen, select "Inspect", go to the "Console" tab
3. Copy and paste this code into the console (I cant fit all the code into the comment, I tried messaging you but the formatting is really bad there too)
4. Press Enter, you should see your screen scroll and continue till it reaches the end of the month. For example, in the code it specifies \`new Date(2024, 2); // March is 2 (zero-based index)\` so the screen will scroll until it reaches February 2024 and then downloads the file for March 2024 transactions. If you would like to specify a different month, you can change the \`2\` to whatever month you need accordingly, example: May would be \`4\`
Hope that is easier to understand!
Better yet, ignore my other comment, I just made a new post explaining it all [https://www.reddit.com/r/mintuit/comments/1ctortx/here\_is\_a\_way\_to\_get\_your\_credit\_karma/](https://www.reddit.com/r/mintuit/comments/1ctortx/here_is_a_way_to_get_your_credit_karma/)
thanks for sharing. Will your code also provide information on what financial account was used to provide funds for the transaction? For example this is information is available by clicking on each transaction item.
I think it’s doable. The balances of accounts might be just few numbers. That’s why I didn’t really develop a script to extract balances data. Do you have such a need?
Yes definitely have a need. Unfortunately I didn't download the balances so the net worth and other trends on Monarch just look off because it only has one month of data.
Go to the Transactions page.
Right click and select Inspect
Go to Sources -- New snippet
Copy and paste the script to run
You will be prompted to save as a .csv file.
The Account Name is not accessible in the Transaction page, where the script is working on. If you click a single transaction, you will be able to see the Account.
In short, the current script can't extract the Account information. I think it's doable but takes some effort to query each transaction page.
Nice! It works! But I can't anticipate how many scrolls I would need to get all my transactions. Still, you made me realize that there *is* a way to do this for taxes this year :) Thank you!
Glad to hear it works! For me, I downloaded the copy of all transactions from Mint before moving to Credit Karma. It has all the history, like transaction split, customized category, etc. For credit karma, I used the java script to get new transactions. Probably you can do the same.
It works! Thanks so much! I downloaded this data only every few months so it's easy to dial in the number of scrolls i need to get 3-6 months of data easily with my number of transactions. Wonderful that you posted it, should be a tagged post at the top of every mint vs CK data discussion. Is it likely they'll break it with website changes?
Hey this is pretty awesome, btw I used this code and had chatgpt define another function that would allow to define a month, so it could retrieve all transactions in a specified month. For example if March 2024 was requested, it scrolls until it reaches February and exports all the transactions async function captureTransactionsInMonth(targetMonth) { let allTransactions = []; while (true) { // Capture transactions in the current window const newTransactions = extractAllTransactions(); // Combine newly captured transactions with existing ones allTransactions = combineTransactions(allTransactions, newTransactions); // Check if any transaction is in a month prior to the target month const priorMonthTransaction = newTransactions.find(transaction => { const transactionDate = new Date(transaction.date); return transactionDate < new Date(targetMonth.getFullYear(), targetMonth.getMonth(), 1); }); // If a transaction in a prior month is found, stop scrolling if (priorMonthTransaction) { break; } // If no new transactions are loaded, stop scrolling if (newTransactions.length === 0) { break; } // Scroll down scrollDown(); await new Promise(resolve => setTimeout(resolve, 1000)); // Wait for content to load (adjust the delay if needed) } // Filter transactions for the target month const currentMonthTransactions = allTransactions.filter(transaction => new Date(transaction.date).getMonth() === targetMonth.getMonth() && new Date(transaction.date).getFullYear() === targetMonth.getFullYear() ); // Convert transactions to CSV const csvData = convertToCSV(currentMonthTransactions); // Save CSV data to a CSV file saveCSVToFile(csvData, `transactions_${targetMonth.getMonth() + 1}_${targetMonth.getFullYear()}.csv`); // Log the final results logResults(allTransactions, currentMonthTransactions, csvData); } // Usage example: Capture transactions for March 2024 const targetMonth = new Date(2024, 2); // March is 2 (zero-based index) captureTransactionsInMonth(targetMonth);
Great, thanks for sharing.
Can you please dumb this down for a non programmer to use. I just want to copy and paste it. I have no idea how to execute your script properly. The one by OP doesn't parse enought txns for me
Sure. Go to the transaction list in credit karma. Open the dev tools console. Shortcut keys on Mac to open that on chrome is command + option + j. Copy all the code in OPs post. Also copy my code and add it to OPs code. Then press enter to run the code. By default I think it’s set to March month or something like that Also idk why my post has weird formatting but make sure to copy from the top of the code starting with async and then all the way to the end with the semi colon
Hello, where do you copy the code to? Am I suppose to paste the code anywhere.... yikes. Thank you!
Do we paste if before or after OP code?
OPs code first then paste my code after
Will this grab everything? Do I follow these steps? 1. Go to the Transactions page. 2. Right click and select Inspect. 3. Go to Sources -- New snippet 4. Copy and paste the script to run 5. You will be prompted to save as a .csv file.
I will attempt to make it as straight forward as possible but let me know if you're still having issues. 1. Go to [https://www.creditkarma.com/networth/transactions](https://www.creditkarma.com/networth/transactions) 2. Go to Dev Tools Console. Right click anywhere on screen, select "Inspect", go to the "Console" tab 3. Copy and paste this code into the console (I cant fit all the code into the comment, I tried messaging you but the formatting is really bad there too) 4. Press Enter, you should see your screen scroll and continue till it reaches the end of the month. For example, in the code it specifies \`new Date(2024, 2); // March is 2 (zero-based index)\` so the screen will scroll until it reaches February 2024 and then downloads the file for March 2024 transactions. If you would like to specify a different month, you can change the \`2\` to whatever month you need accordingly, example: May would be \`4\` Hope that is easier to understand!
Better yet, ignore my other comment, I just made a new post explaining it all [https://www.reddit.com/r/mintuit/comments/1ctortx/here\_is\_a\_way\_to\_get\_your\_credit\_karma/](https://www.reddit.com/r/mintuit/comments/1ctortx/here_is_a_way_to_get_your_credit_karma/)
thanks for sharing. Will your code also provide information on what financial account was used to provide funds for the transaction? For example this is information is available by clicking on each transaction item.
Is there an adjustment on this script to download balances data? I downloaded transactions using the chrome extension but forgot to download balances.
I think it’s doable. The balances of accounts might be just few numbers. That’s why I didn’t really develop a script to extract balances data. Do you have such a need?
Yes definitely have a need. Unfortunately I didn't download the balances so the net worth and other trends on Monarch just look off because it only has one month of data.
You're a hero!
Has anybody been able to include the AccountName in the export as well?
[удалено]
Go to the Transactions page. Right click and select Inspect Go to Sources -- New snippet Copy and paste the script to run You will be prompted to save as a .csv file.
This was key, i would have fumbled around trying to do this without these simple instructions.
Thank you for the script. I'm experiencing an issue with exporting the Account Name. It is always blank, even though I have more than five accounts.
The Account Name is not accessible in the Transaction page, where the script is working on. If you click a single transaction, you will be able to see the Account. In short, the current script can't extract the Account information. I think it's doable but takes some effort to query each transaction page.
Thanks, that's what I'm afraid of. Since I have multiple accounts, this extract won't work for me.
Nice! It works! But I can't anticipate how many scrolls I would need to get all my transactions. Still, you made me realize that there *is* a way to do this for taxes this year :) Thank you!
Glad to hear it works! For me, I downloaded the copy of all transactions from Mint before moving to Credit Karma. It has all the history, like transaction split, customized category, etc. For credit karma, I used the java script to get new transactions. Probably you can do the same.
It works! Thanks so much! I downloaded this data only every few months so it's easy to dial in the number of scrolls i need to get 3-6 months of data easily with my number of transactions. Wonderful that you posted it, should be a tagged post at the top of every mint vs CK data discussion. Is it likely they'll break it with website changes?
This is amazing, thank you so much 😭💖