之前一直使用MaxReward去统计开卡奖励,但是那个现在好像没有Amex开卡奖励的tracker了。顺手写了个script,专门用来追踪在开卡奖励所需的消费。
这个脚本会自动帮你计算符合开卡奖励要求的总消费金额,确保你能轻松达成目标拿到奖励!
脚本功能一览:
- 精确追踪开卡奖励消费:自动计算你的Amex信用卡的符合条件的总消费金额。
- 排除不计入的交易:
- 年费:自动排除,不用担心年费混进统计。
- MEMBERSHIP FEE
- 正常的还款:还款也不会算计入。
- PAYPAL ACCT PAYMENT RECEIVED - THANK YOU
- AUTOPAY PAYMENT - THANK YOU
- ONLINE PAYMENT - THANK YOU
- MOBILE PAYMENT - THANK YOU
- 负余额转移: 和还款一样
* CR ADJ FOR BALANCE TRA - Credit:以下Credit会被排除
- AMEX AIRLINE FEE REIMBURSEMENT
- SHOP SAKS WITH PLATINUM CREDIT
- DELL CREDIT
- AMEX DINING CREDIT
- HILTON RESORT CREDIT
- AMEX FLIGHT CREDIT
- HILTON STATEMENT CREDIT
- 目前没有办法track的Credit有(需要更多dp去验证):
- CLEAR: The statement is shown as CLEAR NEW YORK.
- EQUINOX: The statement is shown as EQUINOX #133 NEW YORK
- Amex Offers: Random merchant name
- 无法排除Cash Advance:需要statement的描述
怎么用 (JS):
- 访问交易记录页面: 打开你的Amex账户,访问这个链接(可以替换日期):
https://global.americanexpress.com/activity/range?from=2024-01-01&to=2024-12-31
- 选择查看交易的卡片: 在页面上选择你想查看的卡片,确保所有交易记录都显示出来。
- 运行脚本:
- 打开浏览器控制台(按下F12或右键点击页面选择“检查”,然后切换到Console标签)。
- 把下面这段代码粘贴进去,按回车运行:
const excludedDescriptions = [
'MEMBERSHIP FEE',
'PAYPAL ACCT PAYMENT RECEIVED - THANK YOU',
'AUTOPAY PAYMENT - THANK YOU',
'CR ADJ FOR BALANCE TRA',
'ONLINE PAYMENT - THANK YOU',
'MOBILE PAYMENT - THANK YOU',
'AMEX AIRLINE FEE REIMBURSEMENT',
'SHOP SAKS WITH PLATINUM CREDIT',
'DELL CREDIT',
'AMEX DINING CREDIT',
'HILTON RESORT CREDIT',
'AMEX FLIGHT CREDIT',
'HILTON STATEMENT CREDIT',
];
let parentElement = document.querySelector('[data-module-name="axp-activity-feed-transactions-table-transactions"]');
let childElements = parentElement.querySelectorAll('.position-relative');
let totalEligibleAmount = 0;
let totalAmount = 0;
let includedCount = 0;
let excludedCount = 0;
// Object to store the amount for each kind of excluded transaction
let excludedAmounts = {};
excludedDescriptions.forEach(desc => {
excludedAmounts[desc] = 0;
});
console.log(`Transaction`);
childElements.forEach((childElement) => {
let descriptionElement = childElement.querySelector('.description');
let priceElement = childElement.querySelector('.hidden-md-up.col-sm-4.col-sm-4.pad-responsive-r');
if (descriptionElement && priceElement) {
let description = descriptionElement.innerText;
let price = parseFloat(priceElement.innerText.replace('$', '').replace(',', ''));
totalAmount += price;
if (!excludedDescriptions.includes(description)) {
console.log(`🟢 ${description.padEnd(50)} ${price >= 0 ? '$' : '-$'}${Math.abs(price).toFixed(2)}`);
includedCount++;
totalEligibleAmount += price;
} else {
console.log(`🔴 ${description.padEnd(50)} ${price >= 0 ? '$' : '-$'}${Math.abs(price).toFixed(2)}`);
excludedCount++;
// Increment the amount for this excluded description
excludedAmounts[description] += price;
}
}
});
console.log('\n');
console.log(`Summary`);
console.log(`🟢 ${`Total Eligible Spending:`.padEnd(50)} ${totalEligibleAmount >= 0 ? '$' : '-$'}${Math.abs(totalEligibleAmount).toFixed(2)}`);
console.log(`🟡 ${`Total Amount:`.padEnd(50)} ${totalAmount >= 0 ? '$' : '-$'}${Math.abs(totalAmount).toFixed(2)}`);
console.log(`🟡 ${`Included Transactions:`.padEnd(50)} ${includedCount}`);
console.log(`🟡 ${`Excluded Transactions:`.padEnd(50)} ${excludedCount}`);
console.log('\n');
// Display non-zero amounts for each kind of excluded transaction
console.log('Amount for each kind of excluded transaction:');
for (let desc in excludedAmounts) {
if (excludedAmounts[desc] !== 0) {
console.log(`🔴 ${desc.padEnd(50)} ${excludedAmounts[desc] >= 0 ? '$' : '-$'}${Math.abs(excludedAmounts[desc]).toFixed(2)}`);
}
}
怎么用 (油猴):
- 安装Tampermonkey扩展:如果你还没有安装Tampermonkey扩展,请前往Chrome Web Store(Chrome用户)或Firefox Add-ons(Firefox用户)进行安装。
- 安装脚本:点击此链接进入Greasy Fork页面,然后点击“Install this script”按钮安装脚本。
- 访问Amex交易记录页面:登录你的Amex账户,并访问交易记录页面。你可以在URL中自定义开始和结束日期:Amex交易记录页面。
- 查看结果:脚本会自动运行并显示在页面上方。你可以在页面上方找到一个按钮,点击它即可查看符合开卡奖励条件的总消费金额和相关统计信息。
- Show Amex Spending Tracker
- After clicking the button
下载链接:
Update logs:
- V1.0.5: Exclude ‘MOBILE PAYMENT - THANK YOU’, @cat1
- V1.0.4: 修复了大部分UI issues!
- V1.0.0: Integrate with Tampermonkey. Have fun!
- Exclude ‘ONLINE PAYMENT - THANK YOU’. @olddonkey
- 排除更多的credit statement,并且列出exclusion明细。
Todo List:
Integrate the script with Tampermonkey- Support the conservative eligible spending amount