关于 transfer-partners
用于比较航空里程兑换方案的技能,根据可兑换伙伴、转点比例和积分估值,计算预订所需的积分成本及机会成本。适合持有可转让积分、已找到奖励机票的旅客。
主要功能
- 01比较不同计划的转点成本
- 02按积分估值计算机会成本
- 03查询航空计划转点伙伴
- 04考虑转点奖励与时效风险
- 05优化跨联盟兑换方案
适用场景
- 01选择预订奖励机票的积分来源
- 02比较多个航空计划的兑换成本
- 03评估转点奖励对成本的影响
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ borski/ travel-hacking-toolkit --skill transfer-partners安装后在 Claude Code 中输入/transfer-partners确认已加载。
详细介绍
转点伙伴优化器
给定奖励机票价格(来自 seats.aero 或手动输入)和可转点数余额,找出最省成本的预订方式。
无需 API 密钥。 使用本地 JSON 数据文件。
数据文件
| 文件 | 用途 |
|---|---|
data/transfer-partners.json | 信用卡 → 忠诚度计划的转点比例 |
data/points-valuations.json | 各计划的 CPP 估值(TPG、UP、OMAAT、VFTW 提供的下限/上限) |
data/partner-awards.json | 各计划可预订的航空公司 |
适用场景
- 用户有奖励机票余位(来自 seats.aero 缓存搜索、实时搜索或手动输入)
- 用户想知道“我应该用哪种积分?”
- 用户想比较不同可转积分的实际成本
- 用户询问某家航空公司或计划的转点伙伴
工作流
步骤 0:检查当前转点奖励(始终执行)
在推荐任何转点之前,加载 transfer-bonuses 技能,并检查 data/transfer-bonuses.json 中相关货币与计划组合是否有有效奖励。30% 奖励会将 1:1 的比例变为 1:1.3,可能彻底改变步骤 3 中成本最低的积分计算结果。奖励还有到期日期,会影响时机决策。
步骤 1:获取奖励机票余位
使用 seats.aero(API 或网页)搜索奖励机票。每条结果都包含:
Source(忠诚度计划:“united”“aeroplan”“flyingblue”等)- 各舱等的积分成本(例如,商务舱 55,000)
步骤 2:将 Seats.aero 来源映射到转点伙伴
Seats.aero 来源名称对应 transfer-partners.json 中的键:
| Seats.aero 来源 | 转点伙伴键 | 可转入的计划 |
|---|---|---|
united | united | Chase UR(1:1)、Bilt(1:1) |
aeroplan | aeroplan | Chase UR(1:1)、Amex MR(1:1)、Bilt(1:1)、Capital One(1:1) |
flyingblue | flying_blue | Chase UR(1:1)、Amex MR(1:1)、Bilt(1:1)、Capital One(1:1)、Citi TY(1:1)、Wells Fargo(1:1) |
american | american | Citi TY(1:1) |
alaska | alaska_hawaiian | Bilt(1:1) |
virginatlantic | virgin_atlantic | Chase UR(1:1)、Amex MR(1:1)、Bilt(1:1)、Citi TY(1:1)、Wells Fargo(经由 Virgin Red 按 1:1) |
delta | delta | Amex MR(1:1) |
emirates | emirates | Bilt(1:1)、Amex MR(5:4)、Capital One(4:3)、Citi TY(5:4) |
etihad | etihad | Bilt(1:1)、Capital One(1:1)、Citi TY(1:1) |
singapore | singapore | Chase UR(1:1)、Amex MR(1:1)、Capital One(1:1)、Citi TY(1:1) |
jetblue | jetblue | Chase UR(1:1)、Citi TY(1:1)、Wells Fargo(1:1)、Amex MR(250:200)、Capital One(5:3) |
qatar | qatar | Amex MR(1:1)、Bilt(1:1)、Capital One(1:1)、Citi TY(1:1) |
turkish | turkish | Bilt(1:1)、Capital One(1:1)、Citi TY(1:1) |
eurobonus | (无直接转点) | 不适用 |
aeromexico | aeromexico | Amex MR(1:1.6)、Capital One(1:1)、Citi TY(1:1) |
smiles | (无直接转点) | 不适用 |
finnair | finnair | Capital One(1:1) |
lufthansa | (无直接转点) | 不适用 |
ethiopian | (无直接转点) | 不适用 |
saudia | (无直接转点) | 不适用 |
“无直接转点”的计划只能通过直接赚取里程或预订联盟伙伴航班来兑换。
步骤 3:计算实际成本
对于每个奖励机票选项,计算使用各类可转积分的成本:
effective_cost = award_miles / transfer_ratio
示例:Aeroplan 商务舱需 55,000 里程
- Chase UR:55,000 / 1.0 = 55,000 UR 积分
- Amex MR:55,000 / 1.0 = 55,000 MR 积分
- Capital One:55,000 / 1.0 = 55,000 Capital One 里程
示例:Emirates 商务舱需 72,500 里程
- Bilt:72,500 / 1.0 = 72,500 Bilt 积分
- Amex MR:72,500 / 0.8 = 90,625 MR 积分(比例较差)
- Capital One:72,500 / 0.75 = 96,667 Capital One 里程(比例最差)
第 4 步:计算机会成本(CPP)
使用 points-valuations.json 评估每种货币的“价值”:
opportunity_cost = effective_cost × point_value_cpp / 100
这表示你放弃的“现金等价值”。越低越好。
第 5 步:呈现结果
始终使用 Markdown 表格。
| 计划 | 所需里程 | 最佳货币 | 所需积分 | CPP 价值 | 现金等价值 |
|---|---|---|---|---|---|
| Aeroplan | 55,000 | Chase UR | 55,000 | 1.7¢ | $935 |
| United | 55,000 | Chase UR | 55,000 | 1.7¢ | $935 |
| Alaska | 37,500 | Bilt | 37,500 | 1.7¢ | $638 |
| Flying Blue | 57,000 | 任意 1:1 | 57,000 | 1.7¢ | $969 |
表格之后:
- 建议:“使用 Bilt 积分通过 Alaska 预订。37,500 Bilt 的机会成本为 $638,而次优的 United/Aeroplan 为 $935。”
- **检查余额:**确认用户在推荐的货币中有足够的积分。
- **有转点奖励吗?**检查当前是否有适用的转点奖励(Roame.travel 或 TPG bonus tracker)。
jq 示例
查找所有可转点至某个计划的货币
jq -r '
to_entries | .[] | select(.key != "_meta") |
.key as $currency | .value.display_name as $name |
(.value.airlines // {}) + (.value.hotels // {}) |
to_entries[] | select(.key == "PROGRAM_KEY") |
"\($name): \(.value.ratio):1 → \(.value.program)"
' data/transfer-partners.json
将 PROGRAM_KEY 替换为对应的键(例如 united、aeroplan、flying_blue)。
计算奖励兑换的实际成本
# Given: 55000 miles via aeroplan
PROGRAM="aeroplan"
MILES=55000
jq -r --arg prog "$PROGRAM" --argjson miles $MILES '
to_entries | .[] | select(.key != "_meta") |
.key as $currency | .value.display_name as $name |
((.value.airlines // {}) + (.value.hotels // {}))[$prog] // null |
select(. != null) |
"\($name): \(($miles / .ratio) | floor) points (ratio \(.ratio):1)"
' data/transfer-partners.json
查找多个奖励选项的最低成本路径
# Given: united at 55000, aeroplan at 55000, alaska at 37500
echo '[
{"program": "united", "miles": 55000},
{"program": "aeroplan", "miles": 55000},
{"program": "alaska_hawaiian", "miles": 37500}
]' | jq -r --slurpfile tp data/transfer-partners.json '
.[] | .program as $prog | .miles as $miles |
($tp[0] | to_entries | .[] | select(.key != "_meta") |
.value.display_name as $name |
((.value.airlines // {}) + (.value.hotels // {}))[$prog] // null |
select(. != null) |
{currency: $name, program: $prog, miles: $miles, points_needed: (($miles / .ratio) | floor), ratio: .ratio}
)
' | jq -s 'sort_by(.points_needed)'
跨联盟优化
有时,成本最低的路径需要通过不同于直观选择的计划进行预订。查看 data/partner-awards.json 中的跨联盟亮点:
- **Virgin Atlantic → ANA:**从美国西海岸出发的商务舱需 52.5K。比任何星空联盟计划都便宜。
- **Etihad → American Airlines:**固定兑换表通常比 AA 的动态定价更划算。
- **Flying Blue → Delta:**通常比 SkyMiles 更便宜,而且可以免费中途停留。
- **Alaska → Starlux:**Starlux 唯一可使用积分预订的方式。
转点时间风险
积分转点不可撤销。时间安排是奖励兑换失效最常见的原因。请仅在确认具体奖励后转点,并且只在准备立即出票时转点。
大多数转点都是即时的,每周 7 天、每天 24 小时均可办理——少数情况除外
即时转点会在几分钟内到账,一周中的任何一天都可以,包括周末和节假日(转点通过 API 处理,而非按工作日批量处理)。只有下方列出的转点较慢的计划会受到周末或节假日延迟的影响。除非某计划列在即时转点名单中,否则不要认为转点一定能赶上当天的预订。
各计划的转点速度
| 计划 | 速度 | 备注 |
|---|---|---|
| Aeroplan | 即时 | 每天均可通过 API 转点。 |
| Flying Blue | 即时 | Amex 和 Chase 均即时到账。 |
| United MileagePlus | 即时 | Chase、Bilt。 |
| Hyatt | 即时 | Chase、Bilt。 |
| Virgin Atlantic | 即时 | Amex/Chase;偶尔最多需要 48 小时。 |
| BA / Iberia / Aer Lingus Avios | 即时 | 在整个 Avios 生态系统内即时共享。风险最低的转点。 |
| Qatar Avios | 即时 | 余额显示可能延迟——重新登录即可查看。 |
| Emirates Skywards | 即时 | 通过 Amex 转点偶尔需要 24 小时。 |
| JetBlue TrueBlue | 即时 | 转点比例较差(Cap One 5:3,Amex/Citi 5:4)。 |
| Cathay Asia Miles | Amex 即时;Capital One 需 24 小时 | |
| Etihad Guest | Capital One 即时 | Amex 转点渠道已于 2026 年 6 月 30 日终止。 |
| Avianca LifeMiles | Cap One/Citi 即时 | Amex 即时到账,但里程会冻结至次日(哥伦比亚时间)——当天预订时不要使用 Amex 渠道。 |
| ANA Mileage Club | 约 48 小时(最多 3 天) | 只有 Amex 渠道。切勿用于当天预订。 |
| Singapore KrisFlyer | Amex 即时;Cap One 最多 48 小时;Chase 需 1–2 天;Citi 最多 5 个工作日 | 确认有兑换名额后再转点。 |
| Turkish Miles & Smiles | Bilt 接近即时;Cap One 约 24 小时;Citi 最多 5 个工作日 | 没有 Amex 或 Chase 渠道。 |
| Marriott Bonvoy | 约 36 小时(最多一周) | 主流转点目标中速度最慢。切勿在未确认时转点。 |
| Atmos Rewards(原 Alaska Mileage Plan) | Bilt 即时;Marriott 3:1 约 2 天 | 没有 Amex、Chase 或 Capital One 渠道。 |
周末和节假日延迟仅适用于处理较慢的计划
上述即时计划不受周末影响。对于处理较慢的计划——ANA、Singapore(通过 Chase/Citi)、Turkish(通过 Citi)、Marriott 和 Atmos(通过 Marriott)——如果在周六、周日或节假日提交,可能会多花几天。如果必须使用其中一个计划,而且座位可能被抢走,请在周末或节假日前最后一个工作日下午 5 点(ET)之前转点,而不是前一晚。
新的忠诚度账户
全新的忠诚度账户首次转点可能会延迟,或被标记为可疑交易;有些计划还规定了严格的等待期:JAL 在关联某些合作伙伴后 60 天内禁止转点,Iberia Plus 则要求账户至少开通 90 天。请提前充分时间开设新账户——以周为单位,而不是以天为单位——并在转点前确认账户号码和姓名与持卡资料完全一致。
如果计划支持,请先保留座位
许多计划允许先保留奖励座位,再付款,这样就能完全消除转点时间带来的风险。请先加载 award-holds 技能,查看各计划当前的规则,不要想当然地认为必须先转点。
- 可保留座位(先保留,再转点): American AAdvantage(24 小时,免费,可在线自助操作)、Lufthansa Miles & More(5 天,电话办理)、Flying Blue(3 天,电话办理)、Cathay Asia Miles(最多 3 天,电话办理)、Turkish Miles & Smiles(2 天)、Virgin Atlantic(1–2 天)、ANA(2 天,电话办理)、Emirates(1 天,电话办理)、Singapore KrisFlyer(由客服人员酌情决定)。AA 的免费在线保留服务也适用于大多数合作伙伴奖励机票。
- 不可保留——转点具有投机性: United、Delta、Aeroplan、Atmos(Alaska)、British Airways、Iberia、Qatar、Korean、Etihad。
如果无法保留座位,只有在满足以下条件后才转点:
- 你已在航空公司自己的预订网站上确认确切的奖励机票(不能只看 seats.aero)
- 你已准备好在里程到账后立即出票
- seats.aero 上的
ComputedLastSeen信息是最新的——缓存过期意味着座位可能已经被订走
注意事项
- 转点比例很少变化,但大额转点前请对照发卡机构的网站进行确认。
- 转点不可撤销。决定转点前,请参阅上文的“转点时间风险”。
- 有些计划会提供转点奖励(额外奖励 10–30%)。请使用
transfer-bonuses技能(实时数据,每周自动刷新),不要靠猜。 - 哪种点数最“划算”,取决于你持有哪种点数最多,以及你对其估值。将估值为 2.0 cpp 的点数按 1:1 转点,其机会成本高于将估值为 1.5 cpp 的点数按 1:1 转点。