{
  "generatedFrom": "마일리지 카드 계산기 ver.2026_1",
  "status": "seed (상품설명서 검수 전)",
  "cards": [
    {
      "group": "GENERAL",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "round",
      "pools": [],
      "bonuses": [],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "bc-air-plus",
      "issuer": "BC카드",
      "name": "BC 에어 플러스",
      "fee": {
        "listed": 19000,
        "calc": 19000
      },
      "earnExclude": [
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "APT_FEE",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "GAS_UTILITY",
        "UTILITY_ETC"
      ],
      "baseTiers": [
        {
          "min": 0,
          "unit": 1000,
          "per": 1
        }
      ],
      "step": {
        "perKrw": 1000000,
        "miles": 200,
        "note": "적립 대상 100만원마다 200마일 (한도 없음)"
      },
      "lounge": {
        "text": "—",
        "visits": 0
      },
      "calcSheet": "BC에어플러스",
      "calcResultCell": "입력!L30",
      "sourceNotes": []
    },
    {
      "group": "GENERAL",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "round",
      "pools": [
        {
          "mode": "replace",
          "id": "domestic-zone",
          "label": "백화점·주유·커피·편의점·택시 2배",
          "cats": [
            "DEPT_STORE",
            "FUEL",
            "CAFE_SB_TWOSOME",
            "CAFE_COFFEEBEAN",
            "CAFE_ETC",
            "CONVENIENCE",
            "TAXI"
          ],
          "unit": 1000,
          "per": 2,
          "rule": "R2",
          "cap": {
            "type": "spend",
            "value": 1000000
          },
          "overflow": "base",
          "note": "합산 100만원(=2,000마일)까지 2배, 초과분은 기본 적립. 설명서의 '추가분 월 2,000마일' 한도와 해석이 다를 수 있음 — 검수 필요"
        }
      ],
      "bonuses": [],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "samsung-mileage-domestic",
      "issuer": "삼성카드",
      "name": "삼성 &MILEAGE PLATINUM 국내형",
      "fee": {
        "listed": 49000,
        "calc": 49000
      },
      "earnExclude": [
        "TRANSIT",
        "EXPRESS_BUS",
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "TAX_NATIONAL",
        "TAX_LOCAL"
      ],
      "baseTiers": [
        {
          "min": 0,
          "unit": 1000,
          "per": 1
        }
      ],
      "lounge": {
        "text": "라운지 연 2회",
        "visits": 2
      },
      "calcSheet": "삼성앤마",
      "calcResultCell": "입력!O30",
      "sourceNotes": [
        "오류 12번: 관리비·도시가스·공과금이 적립 제외에 없음(상품설명서 확인 필요)",
        "추가분 한도의 기준(사용액 100만원 vs 추가분 2,000마일) 불일치 가능"
      ]
    },
    {
      "group": "GENERAL",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "round",
      "pools": [
        {
          "mode": "replace",
          "id": "overseas",
          "label": "해외이용 2배",
          "cats": [
            "OVERSEAS"
          ],
          "unit": 1000,
          "per": 2,
          "rule": "R2",
          "cap": {
            "type": "spend",
            "value": 1000000
          },
          "overflow": "base",
          "note": "해외 100만원(=2,000마일)까지 2배, 초과분은 기본 적립 — 검수 필요"
        }
      ],
      "bonuses": [],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "samsung-mileage-overseas",
      "issuer": "삼성카드",
      "name": "삼성 &MILEAGE PLATINUM 해외형",
      "fee": {
        "listed": 49000,
        "calc": 49000
      },
      "earnExclude": [
        "TRANSIT",
        "EXPRESS_BUS",
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "TAX_NATIONAL",
        "TAX_LOCAL"
      ],
      "baseTiers": [
        {
          "min": 0,
          "unit": 1000,
          "per": 1
        }
      ],
      "lounge": {
        "text": "라운지 연 2회",
        "visits": 2
      },
      "calcSheet": "삼성앤마",
      "calcResultCell": "입력!R30",
      "sourceNotes": [
        "오류 12번과 동일"
      ]
    },
    {
      "group": "GENERAL",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "round",
      "pools": [
        {
          "mode": "replace",
          "id": "overseas",
          "label": "해외이용 2배",
          "cats": [
            "OVERSEAS"
          ],
          "unit": 1000,
          "per": 2,
          "rule": "R2"
        }
      ],
      "bonuses": [],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "kb-skypass-titanium",
      "issuer": "KB국민카드",
      "name": "KB 스카이패스 티타늄",
      "fee": {
        "listed": 45000,
        "calc": 45000
      },
      "earnExclude": [
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "APT_FEE",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "UTILITY_ETC"
      ],
      "gate": {
        "min": 500000,
        "exclude": []
      },
      "monthlyCap": 5000,
      "baseTiers": [
        {
          "min": 0,
          "unit": 1000,
          "per": 1
        }
      ],
      "lounge": {
        "text": "라운지 연 2회",
        "visits": 2
      },
      "calcSheet": "KB티타늄",
      "calcResultCell": "입력!U30",
      "sourceNotes": [
        "오류 9번: 월 5,000마일 한도가 기본+해외 합산인지 확인 필요",
        "오류 6번: 전월실적 판정에 적립 제외 금액 포함(계산기 방식 유지)",
        "도시가스(E55)는 계산기상 제외 목록에 없음"
      ]
    },
    {
      "group": "GENERAL",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "round",
      "pools": [
        {
          "mode": "replace",
          "id": "overseas",
          "label": "해외이용 2배",
          "cats": [
            "OVERSEAS"
          ],
          "unit": 1000,
          "per": 2,
          "rule": "R2"
        }
      ],
      "bonuses": [],
      "side": [
        {
          "kind": "PER_SPEND",
          "name": "KB PAY 추가적립 (포인트)",
          "channel": "KB_PAY",
          "unit": 2000,
          "points": 1,
          "monthlyCap": 2000,
          "cats": [
            "DEPT_STORE",
            "ECOM_COUPANG",
            "SUBSCRIPTION",
            "CAFE_SB_TWOSOME",
            "CAFE_ETC",
            "DUTYFREE",
            "AIR_KE",
            "AIR_OZ_GROUP",
            "AIR_ETC_DOM",
            "TRAVEL_AGENCY",
            "CONVENIENCE",
            "FUEL",
            "HOTEL_LUXURY",
            "GOLF",
            "SPORTS_CENTER",
            "ETC"
          ]
        }
      ],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "kb-heritage-smart",
      "issuer": "KB국민카드",
      "name": "KB HERITAGE Smart",
      "fee": {
        "listed": 200000,
        "calc": 50000,
        "voucherNote": "15만원 쿠폰 차감"
      },
      "earnExclude": [
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "APT_FEE",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "UTILITY_ETC"
      ],
      "baseTiers": [
        {
          "min": 0,
          "unit": 1000,
          "per": 1
        }
      ],
      "lounge": {
        "text": "국내 3회 · 해외 10회 + 바우처",
        "visits": 13,
        "voucher": true
      },
      "calcSheet": "KB헤리티지스마트",
      "calcResultCell": "입력!X30",
      "sourceNotes": [
        "오류 7번: 실질 연회비(−15만원 쿠폰)로 계산"
      ]
    },
    {
      "group": "GENERAL",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "round",
      "pools": [
        {
          "mode": "replace",
          "id": "overseas",
          "label": "해외이용 2배",
          "cats": [
            "OVERSEAS"
          ],
          "unit": 1000,
          "per": 2,
          "rule": "R2",
          "cap": {
            "type": "extra",
            "value": 2000
          }
        }
      ],
      "bonuses": [],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "shinhan-air-one",
      "issuer": "신한카드",
      "name": "신한 Air One",
      "fee": {
        "listed": 49000,
        "calc": 49000
      },
      "earnExclude": [
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "APT_FEE",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "GAS_UTILITY",
        "TAXI",
        "TRANSIT",
        "RAIL"
      ],
      "gate": {
        "min": 500000,
        "exclude": []
      },
      "baseTiers": [
        {
          "min": 0,
          "unit": 1000,
          "per": 1
        }
      ],
      "lounge": {
        "text": "라운지 연 2회",
        "visits": 2
      },
      "calcSheet": "신한에어원",
      "calcResultCell": "입력!AA30",
      "sourceNotes": [
        "오류 6번: 전월실적 판정에 적립 제외 금액 포함"
      ]
    },
    {
      "group": "GENERAL",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "round",
      "pools": [
        {
          "mode": "add",
          "id": "extra",
          "label": "요식·커피·해외·온라인쇼핑 추가 적립",
          "cats": [
            "DINING",
            "CAFE_SB_TWOSOME",
            "CAFE_COFFEEBEAN",
            "CAFE_ETC",
            "OVERSEAS",
            "ECOM_MAJOR",
            "ECOM_COUPANG",
            "ECOM_GMARKET",
            "ECOM_KURLY"
          ],
          "unit": 1500,
          "per": 1,
          "rule": "R2",
          "cap": {
            "type": "total",
            "value": 5000
          },
          "gate": {
            "min": 500000,
            "exclude": [
              "INS_PENSION_HEALTH",
              "INS_EMPLOY_ACCIDENT",
              "APT_FEE",
              "TAX_NATIONAL",
              "TAX_LOCAL",
              "GAS_UTILITY",
              "UTILITY_ETC"
            ]
          },
          "gateFail": "zero"
        }
      ],
      "bonuses": [
        {
          "kind": "VOUCHER",
          "label": "마일 바우처",
          "year": "every",
          "amount": 5000
        }
      ],
      "side": [
        {
          "kind": "SOL_PAY",
          "name": "SOL페이 마이신한포인트",
          "channel": "SOL_PAY",
          "gate": {
            "min": 500000,
            "exclude": [
              "INS_PENSION_HEALTH",
              "INS_EMPLOY_ACCIDENT",
              "APT_FEE",
              "TAX_NATIONAL",
              "TAX_LOCAL",
              "GAS_UTILITY",
              "UTILITY_ETC"
            ]
          },
          "domesticRate": 0.005,
          "overseasRate": 0.01,
          "capLow": 10000,
          "capHigh": 20000,
          "highAt": 2000000
        }
      ],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "shinhan-classic-air",
      "issuer": "신한카드",
      "name": "신한 The CLASSIC AIR",
      "fee": {
        "listed": 150000,
        "calc": 50000,
        "voucherNote": "마이신한포인트 10만P 차감"
      },
      "earnExclude": [
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "APT_FEE",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "GAS_UTILITY",
        "UTILITY_ETC"
      ],
      "baseTiers": [
        {
          "min": 0,
          "unit": 1500,
          "per": 1
        }
      ],
      "lounge": {
        "text": "라운지 연 4회",
        "visits": 4
      },
      "calcSheet": "신한 클래식 에어",
      "calcResultCell": "입력!AD30",
      "sourceNotes": [
        "추가 발견 14번: 계산기 G30·E30은 한도값을 그대로 적립으로 사용(연 276,000P). 본 서비스는 min(적립, 한도)로 계산",
        "오류 11번: G20 표시 오류(결과 영향 없음)"
      ]
    },
    {
      "group": "GENERAL",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "round",
      "pools": [],
      "bonuses": [],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "shinhan-classic-plus",
      "issuer": "신한카드",
      "name": "신한 Classic+",
      "fee": {
        "listed": 125000,
        "calc": 55000,
        "voucherNote": "마이신한포인트 7만P 차감"
      },
      "earnExclude": [
        "TAX_LOCAL",
        "UTILITY_ETC"
      ],
      "gate": {
        "min": 300000,
        "exclude": []
      },
      "baseTiers": [
        {
          "min": 0,
          "unit": 1500,
          "per": 1
        },
        {
          "min": 2000000,
          "unit": 1000,
          "per": 1.5
        }
      ],
      "lounge": {
        "text": "해외 라운지 무제한 + 바우처",
        "visits": "unlimited",
        "voucher": true
      },
      "calcSheet": "신한Classic+",
      "calcResultCell": "입력!AG30",
      "sourceNotes": []
    },
    {
      "group": "GENERAL",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "round",
      "pools": [
        {
          "mode": "replace",
          "id": "overseas",
          "label": "해외이용 2배",
          "cats": [
            "OVERSEAS"
          ],
          "unit": 1000,
          "per": 2,
          "rule": "R2",
          "cap": {
            "type": "extra",
            "value": 1000
          }
        }
      ],
      "bonuses": [],
      "side": [],
      "perks": {
        "overseasFeeWaived": true
      },
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "woori-every-mile",
      "issuer": "우리카드",
      "name": "우리 카드의정석 EVERY MILE SKYPASS",
      "fee": {
        "listed": 39000,
        "calc": 39000
      },
      "earnExclude": [
        "TAXI",
        "TRANSIT",
        "EXPRESS_BUS",
        "RAIL",
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "APT_FEE",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "GAS_UTILITY",
        "UTILITY_ETC"
      ],
      "baseTiers": [
        {
          "min": 0,
          "unit": 1000,
          "per": 1
        }
      ],
      "lounge": {
        "text": "라운지 연 2회 · 해외이용수수료 면제",
        "visits": 2
      },
      "calcSheet": "우리에브리마일",
      "calcResultCell": "입력!AJ30",
      "sourceNotes": []
    },
    {
      "group": "GENERAL",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "round",
      "pools": [
        {
          "mode": "replace",
          "id": "overseas",
          "label": "해외이용 2배",
          "cats": [
            "OVERSEAS"
          ],
          "unit": 1000,
          "per": 2,
          "rule": "R2",
          "gate": {
            "min": 500000,
            "exclude": [
              "INS_PENSION_HEALTH",
              "INS_EMPLOY_ACCIDENT",
              "APT_FEE",
              "TAX_NATIONAL",
              "TAX_LOCAL",
              "GAS_UTILITY",
              "UTILITY_ETC"
            ]
          }
        }
      ],
      "bonuses": [],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "hana-skypass-amex",
      "issuer": "하나카드",
      "name": "하나 스카이패스 아멕스",
      "fee": {
        "listed": 45000,
        "calc": 45000
      },
      "earnExclude": [
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "APT_FEE",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "GAS_UTILITY",
        "UTILITY_ETC"
      ],
      "baseTiers": [
        {
          "min": 0,
          "unit": 1000,
          "per": 1
        }
      ],
      "lounge": {
        "text": "라운지 연 2회",
        "visits": 2
      },
      "calcSheet": "하나아멕스",
      "calcResultCell": "입력!AM30",
      "sourceNotes": [
        "해외 추가 적립은 전월 50만원 게이트. 미달 시 계산기는 0마일, 본 서비스는 기본 적립 적용"
      ]
    },
    {
      "group": "GENERAL",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "round",
      "pools": [
        {
          "mode": "replace",
          "id": "shop",
          "label": "쇼핑(쿠팡·G마켓·올영온라인·무신사·컬리)",
          "cats": [
            "ECOM_COUPANG",
            "ECOM_GMARKET",
            "OLIVEYOUNG_ON",
            "MUSINSA",
            "ECOM_KURLY"
          ],
          "unit": 1500,
          "per": 3,
          "rule": "R4",
          "cap": {
            "type": "spend",
            "value": 500000
          },
          "overflow": "zero",
          "overflowUnknown": true
        },
        {
          "mode": "replace",
          "id": "life",
          "label": "라이프(스벅·투썸·커피빈·편의점·구독)",
          "cats": [
            "CAFE_SB_TWOSOME",
            "CAFE_COFFEEBEAN",
            "CONVENIENCE",
            "SUBSCRIPTION"
          ],
          "unit": 1500,
          "per": 3,
          "rule": "R4",
          "cap": {
            "type": "spend",
            "value": 500000
          },
          "overflow": "zero",
          "overflowUnknown": true
        },
        {
          "mode": "replace",
          "id": "travel",
          "label": "트래블(대한항공·아시아나계열 항공, 일반 면세)",
          "cats": [
            "AIR_KE",
            "AIR_OZ_GROUP",
            "DUTYFREE"
          ],
          "unit": 1500,
          "per": 3,
          "rule": "R4",
          "cap": {
            "type": "spend",
            "value": 1000000
          },
          "overflow": "zero",
          "overflowUnknown": true
        }
      ],
      "bonuses": [
        {
          "kind": "WELCOME",
          "label": "웰컴 보너스",
          "year": "first",
          "amount": 3000,
          "monthlySpendMin": 500000,
          "requires": "hanaNew"
        }
      ],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "hana-travelog-skypass",
      "issuer": "하나카드",
      "name": "하나 트래블로그 스카이패스",
      "fee": {
        "listed": 48000,
        "calc": 48000
      },
      "earnExclude": [
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "APT_FEE",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "GAS_UTILITY",
        "UTILITY_ETC"
      ],
      "baseTiers": [
        {
          "min": 0,
          "unit": 1500,
          "per": 1.5
        }
      ],
      "serviceChange": {
        "date": "2027-01-01",
        "note": "하나 트래블로그 스카이패스/프레스티지는 2027년 1월 1일 서비스 변경 예정 (계산기 메모)"
      },
      "lounge": {
        "text": "라운지 연 2회",
        "visits": 2
      },
      "calcSheet": "하나 스카이패스",
      "calcResultCell": "입력!AP30",
      "sourceNotes": [
        "오류 4번: 영역 한도 초과 금액이 기본 적립에서도 빠져 0마일 처리됨. 기본값은 계산기 방식(미적립), '초과분 기본 적립' 가정 토글 제공 — 상품설명서 확인 필요"
      ]
    },
    {
      "group": "GENERAL",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "round",
      "pools": [
        {
          "mode": "replace",
          "id": "shop",
          "label": "쇼핑(백화점·이커머스 5곳)",
          "cats": [
            "DEPT_STORE",
            "ECOM_COUPANG",
            "ECOM_GMARKET",
            "OLIVEYOUNG_ON",
            "MUSINSA",
            "ECOM_KURLY"
          ],
          "unit": 1500,
          "per": 3,
          "rule": "R4",
          "cap": {
            "type": "spend",
            "value": 500000
          },
          "overflow": "zero",
          "overflowUnknown": true
        },
        {
          "mode": "replace",
          "id": "life",
          "label": "라이프(골프·스포츠센터·커피·편의점·구독)",
          "cats": [
            "SPORTS_CENTER",
            "GOLF",
            "CAFE_SB_TWOSOME",
            "CAFE_COFFEEBEAN",
            "CONVENIENCE",
            "SUBSCRIPTION"
          ],
          "unit": 1500,
          "per": 3,
          "rule": "R4",
          "cap": {
            "type": "spend",
            "value": 500000
          },
          "overflow": "zero",
          "overflowUnknown": true
        },
        {
          "mode": "replace",
          "id": "travel",
          "label": "트래블(항공·면세·특급호텔)",
          "cats": [
            "AIR_KE",
            "AIR_OZ_GROUP",
            "DUTYFREE",
            "HOTEL_LUXURY"
          ],
          "unit": 1500,
          "per": 3,
          "rule": "R4",
          "cap": {
            "type": "spend",
            "value": 1000000
          },
          "overflow": "zero",
          "overflowUnknown": true
        }
      ],
      "bonuses": [
        {
          "kind": "WELCOME",
          "label": "웰컴 보너스",
          "year": "first",
          "amount": 5000,
          "monthlySpendMin": 500000,
          "requires": "hanaNew"
        },
        {
          "kind": "VOUCHER",
          "label": "프리미엄 바우처",
          "year": "every",
          "amount": 6000,
          "monthlySpendMin": 1000000
        }
      ],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "hana-travelog-prestige",
      "issuer": "하나카드",
      "name": "하나 트래블로그 프레스티지",
      "fee": {
        "listed": 150000,
        "calc": 150000
      },
      "earnExclude": [
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "APT_FEE",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "GAS_UTILITY",
        "UTILITY_ETC"
      ],
      "baseTiers": [
        {
          "min": 0,
          "unit": 1500,
          "per": 1.5
        }
      ],
      "serviceChange": {
        "date": "2027-01-01",
        "note": "하나 트래블로그 스카이패스/프레스티지는 2027년 1월 1일 서비스 변경 예정 (계산기 메모)"
      },
      "lounge": {
        "text": "라운지 연 4회 + 바우처",
        "visits": 4,
        "voucher": true
      },
      "calcSheet": "하나 프레스티지",
      "calcResultCell": "입력!AS30",
      "sourceNotes": [
        "오류 4번과 동일",
        "오류 7번: 바우처를 마일로 더하고 연회비는 그대로 둠(일관성 없음)"
      ]
    },
    {
      "group": "GENERAL",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "round",
      "pools": [],
      "bonuses": [],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "lotte-loca-platinum",
      "issuer": "롯데카드",
      "name": "LOCA PLATINUM 마일리지형",
      "fee": {
        "listed": 100000,
        "calc": 50000,
        "voucherNote": "5만원 호텔 바우처 차감"
      },
      "earnExclude": [
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "APT_FEE",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "GAS_UTILITY",
        "UTILITY_ETC"
      ],
      "baseTiers": [
        {
          "min": 0,
          "unit": 1500,
          "per": 1
        },
        {
          "min": 1500001,
          "unit": 1000,
          "per": 1
        }
      ],
      "lounge": {
        "text": "라운지 연 2회 + 바우처",
        "visits": 2,
        "voucher": true
      },
      "calcSheet": "롯카 플래티넘",
      "calcResultCell": "입력!AV30",
      "sourceNotes": [
        "오류 5번: 계산기는 ROUND(…,1) 사용 — 본 서비스는 정수 반올림"
      ]
    },
    {
      "group": "GENERAL",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "round",
      "pools": [
        {
          "mode": "replace",
          "id": "overseas",
          "label": "해외이용 2배",
          "cats": [
            "OVERSEAS"
          ],
          "unit": 1500,
          "per": 2,
          "rule": "R2",
          "cap": {
            "type": "extra",
            "value": 2000
          }
        }
      ],
      "bonuses": [],
      "side": [
        {
          "kind": "MILE_MULT",
          "name": "우리WON꿀머니",
          "channel": "WOORI_WON",
          "mult": 5,
          "gate": {
            "min": 500000,
            "exclude": [
              "INS_PENSION_HEALTH",
              "INS_EMPLOY_ACCIDENT",
              "APT_FEE",
              "TAX_NATIONAL",
              "TAX_LOCAL",
              "GAS_UTILITY",
              "UTILITY_ETC"
            ]
          },
          "monthlyCap": 30000
        }
      ],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "woori-mile-point",
      "issuer": "우리카드",
      "name": "카드의정석2 MILE&POINT",
      "fee": {
        "listed": 75000,
        "calc": 75000
      },
      "earnExclude": [
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "APT_FEE",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "GAS_UTILITY",
        "UTILITY_ETC"
      ],
      "baseTiers": [
        {
          "min": 0,
          "unit": 1500,
          "per": 1
        }
      ],
      "lounge": {
        "text": "라운지 연 2회",
        "visits": 2
      },
      "calcSheet": "우리 마일&포인트",
      "calcResultCell": "입력!AY30",
      "sourceNotes": []
    },
    {
      "group": "GENERAL",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "round",
      "pools": [
        {
          "mode": "replace",
          "id": "zone",
          "label": "온라인·라이프쇼핑(다이소·올영)·카페·해외 2배",
          "cats": [
            "DAISO",
            "OLIVEYOUNG_OFF",
            "OLIVEYOUNG_ON",
            "CAFE_SB_TWOSOME",
            "OVERSEAS"
          ],
          "unit": 1500,
          "per": 2,
          "rule": "R2",
          "cap": {
            "type": "extra",
            "value": 2000
          },
          "gate": {
            "min": 500000,
            "exclude": [
              "INS_PENSION_HEALTH",
              "INS_EMPLOY_ACCIDENT",
              "TAX_NATIONAL",
              "TAX_LOCAL",
              "GAS_UTILITY",
              "UTILITY_ETC",
              "TRANSIT",
              "EXPRESS_BUS"
            ]
          }
        },
        {
          "mode": "replace",
          "id": "apt",
          "label": "아파트관리비 1,500원당 1마일",
          "cats": [
            "APT_FEE"
          ],
          "unit": 1500,
          "per": 1,
          "rule": "R11",
          "cap": {
            "type": "total",
            "value": 500
          },
          "overflow": "zero",
          "gate": {
            "min": 500000,
            "exclude": [
              "INS_PENSION_HEALTH",
              "INS_EMPLOY_ACCIDENT",
              "TAX_NATIONAL",
              "TAX_LOCAL",
              "GAS_UTILITY",
              "UTILITY_ETC",
              "TRANSIT",
              "EXPRESS_BUS"
            ]
          },
          "gateFail": "zero"
        }
      ],
      "bonuses": [],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "bc-baro-air-max",
      "issuer": "BC카드",
      "name": "BC 바로 에어 맥스",
      "fee": {
        "listed": 43000,
        "calc": 43000
      },
      "earnExclude": [
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "GAS_UTILITY",
        "UTILITY_ETC",
        "TRANSIT",
        "EXPRESS_BUS"
      ],
      "baseTiers": [
        {
          "min": 0,
          "unit": 1500,
          "per": 1
        }
      ],
      "step": {
        "perKrw": 1000000,
        "miles": 200,
        "cap": 2000,
        "gate": {
          "min": 500000,
          "exclude": [
            "INS_PENSION_HEALTH",
            "INS_EMPLOY_ACCIDENT",
            "TAX_NATIONAL",
            "TAX_LOCAL",
            "GAS_UTILITY",
            "UTILITY_ETC",
            "TRANSIT",
            "EXPRESS_BUS"
          ]
        },
        "addBack": [
          "TAX_NATIONAL",
          "TAX_LOCAL"
        ],
        "note": "국세·지방세 포함 사용액 기준(계산기 방식)"
      },
      "lounge": {
        "text": "—",
        "visits": 0
      },
      "calcSheet": "BC 바로에어맥스",
      "calcResultCell": "입력!BB30",
      "sourceNotes": [
        "오류 3번 수정: 다이소·올영온라인 중복 집계 제거, 관리비 이중 차감 제거. 계산기값 월 3,920 → 수정값 월 4,033. '온라인쇼핑' 범위는 상품설명서 확인 필요"
      ]
    },
    {
      "group": "GENERAL",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "round",
      "pools": [
        {
          "mode": "replace",
          "id": "zone",
          "label": "주유·택시·대중교통·해외 2배",
          "cats": [
            "FUEL",
            "TAXI",
            "TRANSIT",
            "OVERSEAS"
          ],
          "unit": 1500,
          "per": 2,
          "rule": "R2",
          "cap": {
            "type": "extra",
            "value": 2000
          },
          "gate": {
            "min": 500000,
            "exclude": [
              "INS_PENSION_HEALTH",
              "INS_EMPLOY_ACCIDENT",
              "APT_FEE",
              "TAX_NATIONAL",
              "TAX_LOCAL",
              "GAS_UTILITY",
              "UTILITY_ETC",
              "EXPRESS_BUS"
            ]
          }
        }
      ],
      "bonuses": [],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "bc-baro-air-master",
      "issuer": "BC카드",
      "name": "BC 바로 에어 마스터",
      "fee": {
        "listed": 29000,
        "calc": 29000
      },
      "earnExclude": [
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "APT_FEE",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "GAS_UTILITY",
        "UTILITY_ETC",
        "EXPRESS_BUS"
      ],
      "baseTiers": [
        {
          "min": 0,
          "unit": 1500,
          "per": 1
        }
      ],
      "step": {
        "perKrw": 1000000,
        "miles": 200,
        "cap": 2000,
        "gate": {
          "min": 500000,
          "exclude": [
            "INS_PENSION_HEALTH",
            "INS_EMPLOY_ACCIDENT",
            "APT_FEE",
            "TAX_NATIONAL",
            "TAX_LOCAL",
            "GAS_UTILITY",
            "UTILITY_ETC",
            "EXPRESS_BUS"
          ]
        },
        "addBack": [
          "TAX_NATIONAL",
          "TAX_LOCAL"
        ],
        "note": "국세·지방세 포함 사용액 기준(계산기 방식)"
      },
      "lounge": {
        "text": "—",
        "visits": 0
      },
      "calcSheet": "BC 바로에어마스터",
      "calcResultCell": "입력!BE30",
      "sourceNotes": [
        "오류 2번 수정: 대중교통 사용액 참조 E35(스벅) → E47(버스·지하철). 예시값에서는 둘 다 5만원이라 결과 동일(3,913)"
      ]
    },
    {
      "group": "GENERAL",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "round",
      "pools": [],
      "bonuses": [],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "ibk-bliss7",
      "issuer": "기업은행",
      "name": "기업 Bliss.7 (단종)",
      "discontinued": true,
      "incomplete": true,
      "fee": {
        "listed": 200000,
        "calc": 200000
      },
      "earnExclude": [
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "APT_FEE",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "GAS_UTILITY",
        "UTILITY_ETC"
      ],
      "baseTiers": [
        {
          "min": 0,
          "unit": 1000,
          "per": 1
        }
      ],
      "lounge": {
        "text": "PP카드 + 바우처",
        "visits": 0,
        "pp": true,
        "voucher": true
      },
      "calcSheet": "(없음)",
      "calcResultCell": "입력!BH30",
      "sourceNotes": [
        "오류 1번: 전용 계산 시트가 없고 '우리 마일&포인트' 결과(2,927)를 잘못 참조. 상품설명서로 규칙 정의 전까지 계산·추천에서 제외"
      ]
    },
    {
      "group": "GENERAL",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "round",
      "pools": [],
      "bonuses": [],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "lotte-skypass-master",
      "issuer": "롯데카드",
      "name": "롯데 스카이패스 (단종)",
      "discontinued": true,
      "fee": {
        "listed": 20000,
        "calc": 20000
      },
      "earnExclude": [
        "TAX_LOCAL",
        "INS_EMPLOY_ACCIDENT"
      ],
      "baseTiers": [
        {
          "min": 0,
          "unit": 1000,
          "per": 1
        }
      ],
      "lounge": {
        "text": "—",
        "visits": 0
      },
      "calcSheet": "롯데 스카이패스 마스터",
      "calcResultCell": "입력!BK30",
      "sourceNotes": []
    },
    {
      "issuer": "현대카드",
      "group": "HYUNDAI_PREMIUM",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "round",
      "earnExclude": [
        "EXPRESS_BUS",
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "APT_FEE",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "GAS_UTILITY",
        "UTILITY_ETC"
      ],
      "pools": [
        {
          "mode": "replace",
          "id": "overseas",
          "label": "해외 2배",
          "cats": [
            "OVERSEAS"
          ],
          "unit": 1000,
          "per": 2,
          "rule": "R2",
          "cap": {
            "type": "total",
            "value": 4000
          },
          "overflow": "base"
        },
        {
          "mode": "replace",
          "id": "ke",
          "label": "대한항공 직판 2배",
          "cats": [
            "AIR_KE"
          ],
          "unit": 1000,
          "per": 2,
          "rule": "R2",
          "cap": {
            "type": "total",
            "value": 1667
          },
          "overflow": "base"
        }
      ],
      "bonuses": [
        {
          "kind": "ANNUAL_BONUS",
          "label": "연간 보너스 (초년도)",
          "year": "first",
          "amount": 1000,
          "annualSpendMin": 1000000
        },
        {
          "kind": "ANNUAL_BONUS",
          "label": "연간 보너스 (2년차~)",
          "year": "second",
          "amount": 1000,
          "annualSpendMin": 6000000
        }
      ],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "hyundai-060",
      "name": "현대 060 (2탄)",
      "fee": {
        "listed": 60000,
        "calc": 10000,
        "voucherNote": "5만원 바우처 차감"
      },
      "baseTiers": [
        {
          "min": 0,
          "unit": 1000,
          "per": 1
        }
      ],
      "gate": {
        "min": 500000,
        "exclude": [
          "TAX_NATIONAL",
          "TAX_LOCAL",
          "UTILITY_ETC"
        ]
      },
      "lounge": {
        "text": "마일리지 바우처",
        "visits": 0,
        "voucher": true
      },
      "calcSheet": "현대카드2탄",
      "calcResultCell": "입력!L52",
      "sourceNotes": [
        "오류 8번: 계산기 '2년차 이상 연간' 행은 초년도 값을 복사(L60=L54). 본 서비스는 2년차 보너스·연회비를 반영해 별도 산출",
        "오류 13번: 대한항공 직판에 기내면세점 미포함(단종군은 포함) — 의도 확인 필요"
      ]
    },
    {
      "issuer": "현대카드",
      "group": "HYUNDAI_PREMIUM",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "round",
      "earnExclude": [
        "EXPRESS_BUS",
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "APT_FEE",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "GAS_UTILITY",
        "UTILITY_ETC"
      ],
      "pools": [
        {
          "mode": "replace",
          "id": "overseas",
          "label": "해외 2배",
          "cats": [
            "OVERSEAS"
          ],
          "unit": 1000,
          "per": 2,
          "rule": "R2",
          "cap": {
            "type": "total",
            "value": 4000
          },
          "overflow": "base"
        },
        {
          "mode": "replace",
          "id": "ke",
          "label": "대한항공 직판 2배",
          "cats": [
            "AIR_KE"
          ],
          "unit": 1000,
          "per": 2,
          "rule": "R2",
          "cap": {
            "type": "total",
            "value": 1667
          },
          "overflow": "base"
        }
      ],
      "bonuses": [
        {
          "kind": "ANNUAL_BONUS",
          "label": "연간 보너스 (초년도)",
          "year": "first",
          "amount": 6000,
          "annualSpendMin": 1000000
        },
        {
          "kind": "ANNUAL_BONUS",
          "label": "연간 보너스 (2년차~)",
          "year": "second",
          "amount": 6000,
          "annualSpendMin": 12000000
        }
      ],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "hyundai-120",
      "name": "현대 120 (2탄)",
      "fee": {
        "listed": 120000,
        "calc": 70000,
        "voucherNote": "5만원 바우처 차감"
      },
      "baseTiers": [
        {
          "min": 0,
          "unit": 1000,
          "per": 1
        }
      ],
      "gate": {
        "min": 500000,
        "exclude": [
          "TAX_NATIONAL",
          "TAX_LOCAL",
          "UTILITY_ETC"
        ]
      },
      "lounge": {
        "text": "마일리지 바우처",
        "visits": 0,
        "voucher": true
      },
      "calcSheet": "현대카드2탄",
      "calcResultCell": "입력!O52",
      "sourceNotes": [
        "오류 8번: 계산기 '2년차 이상 연간' 행은 초년도 값을 복사(L60=L54). 본 서비스는 2년차 보너스·연회비를 반영해 별도 산출",
        "오류 13번: 대한항공 직판에 기내면세점 미포함(단종군은 포함) — 의도 확인 필요"
      ]
    },
    {
      "issuer": "현대카드",
      "group": "HYUNDAI_PREMIUM",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "round",
      "earnExclude": [
        "EXPRESS_BUS",
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "APT_FEE",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "GAS_UTILITY",
        "UTILITY_ETC"
      ],
      "pools": [
        {
          "mode": "replace",
          "id": "overseas",
          "label": "해외 3배",
          "cats": [
            "OVERSEAS"
          ],
          "unit": 1000,
          "per": 3,
          "rule": "R2",
          "cap": {
            "type": "total",
            "value": 6000
          },
          "overflow": "base"
        },
        {
          "mode": "replace",
          "id": "ke",
          "label": "대한항공 직판 3배",
          "cats": [
            "AIR_KE"
          ],
          "unit": 1000,
          "per": 3,
          "rule": "R2",
          "cap": {
            "type": "total",
            "value": 2500
          },
          "overflow": "base"
        },
        {
          "mode": "replace",
          "id": "lux",
          "label": "국내 특급호텔·백화점·골프장 3배",
          "cats": [
            "HOTEL_LUXURY",
            "GOLF",
            "DEPT_STORE"
          ],
          "unit": 1000,
          "per": 3,
          "rule": "R2",
          "cap": {
            "type": "total",
            "value": 6000
          },
          "overflow": "base"
        }
      ],
      "bonuses": [
        {
          "kind": "ANNUAL_BONUS",
          "label": "연간 보너스 (초년도)",
          "year": "first",
          "amount": 10000,
          "annualSpendMin": 1000000
        },
        {
          "kind": "ANNUAL_BONUS",
          "label": "연간 보너스 (2년차~)",
          "year": "second",
          "amount": 10000,
          "annualSpendMin": 24000000
        }
      ],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "hyundai-300",
      "name": "현대 300 (2탄)",
      "fee": {
        "listed": 300000,
        "calc": 200000,
        "voucherNote": "10만원 바우처 차감"
      },
      "baseTiers": [
        {
          "min": 0,
          "unit": 1000,
          "per": 1
        }
      ],
      "gate": {
        "min": 500000,
        "exclude": [
          "TAX_NATIONAL",
          "TAX_LOCAL",
          "UTILITY_ETC"
        ]
      },
      "lounge": {
        "text": "라운지 연 10회 + 바우처",
        "visits": 10,
        "voucher": true
      },
      "calcSheet": "현대카드2탄",
      "calcResultCell": "입력!R52",
      "sourceNotes": [
        "오류 8번: 계산기 '2년차 이상 연간' 행은 초년도 값을 복사(L60=L54). 본 서비스는 2년차 보너스·연회비를 반영해 별도 산출",
        "오류 13번: 대한항공 직판에 기내면세점 미포함(단종군은 포함) — 의도 확인 필요"
      ]
    },
    {
      "issuer": "현대카드",
      "group": "HYUNDAI_PREMIUM",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "round",
      "earnExclude": [
        "EXPRESS_BUS",
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "APT_FEE",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "GAS_UTILITY",
        "UTILITY_ETC"
      ],
      "pools": [
        {
          "mode": "replace",
          "id": "overseas",
          "label": "해외 3배",
          "cats": [
            "OVERSEAS"
          ],
          "unit": 1000,
          "per": 3,
          "rule": "R2",
          "cap": {
            "type": "total",
            "value": 6000
          },
          "overflow": "base"
        },
        {
          "mode": "replace",
          "id": "ke",
          "label": "대한항공 직판 5배",
          "cats": [
            "AIR_KE"
          ],
          "unit": 1000,
          "per": 5,
          "rule": "R2",
          "cap": {
            "type": "total",
            "value": 4167
          },
          "overflow": "base"
        },
        {
          "mode": "replace",
          "id": "lux",
          "label": "국내 특급호텔·백화점·골프장 3배",
          "cats": [
            "HOTEL_LUXURY",
            "GOLF",
            "DEPT_STORE"
          ],
          "unit": 1000,
          "per": 3,
          "rule": "R2",
          "cap": {
            "type": "total",
            "value": 6000
          },
          "overflow": "base"
        }
      ],
      "bonuses": [
        {
          "kind": "ANNUAL_BONUS",
          "label": "연간 보너스 (초년도)",
          "year": "first",
          "amount": 30000,
          "annualSpendMin": 1000000
        },
        {
          "kind": "ANNUAL_BONUS",
          "label": "연간 보너스 (2년차~)",
          "year": "second",
          "amount": 30000,
          "annualSpendMin": 36000000
        }
      ],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "hyundai-first2",
      "name": "현대 the First edition2",
      "fee": {
        "listed": 800000,
        "calc": 600000,
        "voucherNote": "20만원 바우처 차감"
      },
      "baseTiers": [
        {
          "min": 0,
          "unit": 1000,
          "per": 1
        }
      ],
      "gate": {
        "min": 500000,
        "exclude": [
          "TAX_NATIONAL",
          "TAX_LOCAL",
          "UTILITY_ETC"
        ]
      },
      "lounge": {
        "text": "라운지 무제한 + 바우처",
        "visits": "unlimited",
        "voucher": true
      },
      "calcSheet": "현대카드2탄",
      "calcResultCell": "입력!U52",
      "sourceNotes": [
        "오류 8번: 계산기 '2년차 이상 연간' 행은 초년도 값을 복사(L60=L54). 본 서비스는 2년차 보너스·연회비를 반영해 별도 산출",
        "오류 13번: 대한항공 직판에 기내면세점 미포함(단종군은 포함) — 의도 확인 필요"
      ]
    },
    {
      "issuer": "현대카드",
      "group": "HYUNDAI_PREMIUM",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "ceil",
      "earnExclude": [
        "EXPRESS_BUS",
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "APT_FEE",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "GAS_UTILITY",
        "UTILITY_ETC"
      ],
      "pools": [
        {
          "mode": "replace",
          "id": "overseas",
          "label": "해외·일반 면세점 2배",
          "cats": [
            "OVERSEAS",
            "DUTYFREE"
          ],
          "unit": 1000,
          "per": 2,
          "rule": "R2",
          "cap": {
            "type": "total",
            "value": 4000
          },
          "overflow": "base"
        },
        {
          "mode": "replace",
          "id": "ke",
          "label": "대한항공 직판·기내면세점 2배",
          "cats": [
            "AIR_KE",
            "DUTYFREE_KE"
          ],
          "unit": 1000,
          "per": 2,
          "rule": "R2",
          "cap": {
            "type": "total",
            "value": 1667
          },
          "overflow": "base"
        }
      ],
      "bonuses": [
        {
          "kind": "WELCOME",
          "label": "웰컴 보너스",
          "year": "first",
          "amount": 3000,
          "annualSpendMin": 1000000
        }
      ],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "hyundai-030",
      "name": "현대 030 (단종)",
      "discontinued": true,
      "fee": {
        "listed": 30000,
        "calc": 30000
      },
      "baseTiers": [
        {
          "min": 0,
          "unit": 1000,
          "per": 1
        }
      ],
      "lounge": {
        "text": "—",
        "visits": 0
      },
      "calcSheet": "현대카드",
      "calcResultCell": "입력!X52",
      "sourceNotes": [
        "오류 10번: 단종군 시트에는 전월실적 조건이 없음(2탄은 50만원) — 상품별 확인 필요",
        "오류 8번: 2년차 행은 연회비를 반영한 값"
      ]
    },
    {
      "issuer": "현대카드",
      "group": "HYUNDAI_PREMIUM",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "ceil",
      "earnExclude": [
        "EXPRESS_BUS",
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "APT_FEE",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "GAS_UTILITY",
        "UTILITY_ETC"
      ],
      "pools": [
        {
          "mode": "replace",
          "id": "overseas",
          "label": "해외·일반 면세점 2배",
          "cats": [
            "OVERSEAS",
            "DUTYFREE"
          ],
          "unit": 1000,
          "per": 2,
          "rule": "R2",
          "cap": {
            "type": "total",
            "value": 4000
          },
          "overflow": "base"
        },
        {
          "mode": "replace",
          "id": "ke",
          "label": "대한항공 직판·기내면세점 2배",
          "cats": [
            "AIR_KE",
            "DUTYFREE_KE"
          ],
          "unit": 1000,
          "per": 2,
          "rule": "R2",
          "cap": {
            "type": "total",
            "value": 1667
          },
          "overflow": "base"
        }
      ],
      "bonuses": [
        {
          "kind": "WELCOME",
          "label": "웰컴 보너스",
          "year": "first",
          "amount": 5000,
          "annualSpendMin": 1000000
        }
      ],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "hyundai-070",
      "name": "현대 070 (단종)",
      "discontinued": true,
      "fee": {
        "listed": 70000,
        "calc": 70000
      },
      "baseTiers": [
        {
          "min": 0,
          "unit": 1000,
          "per": 1
        }
      ],
      "lounge": {
        "text": "라운지 연 2회",
        "visits": 2
      },
      "calcSheet": "현대카드",
      "calcResultCell": "입력!AA52",
      "sourceNotes": [
        "오류 10번: 단종군 시트에는 전월실적 조건이 없음(2탄은 50만원) — 상품별 확인 필요",
        "오류 8번: 2년차 행은 연회비를 반영한 값"
      ]
    },
    {
      "issuer": "현대카드",
      "group": "HYUNDAI_PREMIUM",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "ceil",
      "earnExclude": [
        "EXPRESS_BUS",
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "APT_FEE",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "GAS_UTILITY",
        "UTILITY_ETC"
      ],
      "pools": [
        {
          "mode": "replace",
          "id": "overseas",
          "label": "해외·일반 면세점 2배",
          "cats": [
            "OVERSEAS",
            "DUTYFREE"
          ],
          "unit": 1000,
          "per": 2,
          "rule": "R2",
          "cap": {
            "type": "total",
            "value": 4000
          },
          "overflow": "base"
        },
        {
          "mode": "replace",
          "id": "ke",
          "label": "대한항공 직판·기내면세점 3배",
          "cats": [
            "AIR_KE",
            "DUTYFREE_KE"
          ],
          "unit": 1000,
          "per": 3,
          "rule": "R2",
          "cap": {
            "type": "total",
            "value": 2500
          },
          "overflow": "base"
        },
        {
          "mode": "replace",
          "id": "lux",
          "label": "국내 특급호텔·백화점·골프장 2배",
          "cats": [
            "HOTEL_LUXURY",
            "GOLF",
            "DEPT_STORE"
          ],
          "unit": 1000,
          "per": 2,
          "rule": "R2",
          "cap": {
            "type": "total",
            "value": 4000
          },
          "overflow": "base"
        }
      ],
      "bonuses": [
        {
          "kind": "WELCOME",
          "label": "웰컴 보너스",
          "year": "first",
          "amount": 5000,
          "annualSpendMin": 1000000
        },
        {
          "kind": "VOUCHER",
          "label": "마일리지 바우처 (초년도)",
          "year": "first",
          "amount": 5000,
          "annualSpendMin": 2500000
        }
      ],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "hyundai-150",
      "name": "현대 150 (단종)",
      "discontinued": true,
      "fee": {
        "listed": 150000,
        "calc": 80000,
        "voucherNote": "비마일 바우처 가치 차감"
      },
      "baseTiers": [
        {
          "min": 0,
          "unit": 1000,
          "per": 1
        }
      ],
      "lounge": {
        "text": "라운지 연 2회 + 바우처",
        "visits": 2,
        "voucher": true
      },
      "calcSheet": "현대카드",
      "calcResultCell": "입력!AD52",
      "sourceNotes": [
        "오류 10번: 단종군 시트에는 전월실적 조건이 없음(2탄은 50만원) — 상품별 확인 필요",
        "오류 8번: 2년차 행은 연회비를 반영한 값"
      ]
    },
    {
      "issuer": "현대카드",
      "group": "HYUNDAI_PREMIUM",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "ceil",
      "earnExclude": [
        "EXPRESS_BUS",
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "APT_FEE",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "GAS_UTILITY",
        "UTILITY_ETC"
      ],
      "pools": [
        {
          "mode": "replace",
          "id": "overseas",
          "label": "해외·일반 면세점 3배",
          "cats": [
            "OVERSEAS",
            "DUTYFREE"
          ],
          "unit": 1000,
          "per": 3,
          "rule": "R2",
          "cap": {
            "type": "total",
            "value": 6000
          },
          "overflow": "base"
        },
        {
          "mode": "replace",
          "id": "ke",
          "label": "대한항공 직판·기내면세점 5배",
          "cats": [
            "AIR_KE",
            "DUTYFREE_KE"
          ],
          "unit": 1000,
          "per": 5,
          "rule": "R2",
          "cap": {
            "type": "total",
            "value": 4167
          },
          "overflow": "base"
        },
        {
          "mode": "replace",
          "id": "lux",
          "label": "국내 특급호텔·백화점·골프장 3배",
          "cats": [
            "HOTEL_LUXURY",
            "GOLF",
            "DEPT_STORE"
          ],
          "unit": 1000,
          "per": 3,
          "rule": "R2",
          "cap": {
            "type": "total",
            "value": 6000
          },
          "overflow": "base"
        }
      ],
      "bonuses": [
        {
          "kind": "WELCOME",
          "label": "웰컴 보너스",
          "year": "first",
          "amount": 15000,
          "annualSpendMin": 1000000
        },
        {
          "kind": "VOUCHER",
          "label": "마일리지 바우처 (초년도)",
          "year": "first",
          "amount": 15000,
          "annualSpendMin": 2500000
        },
        {
          "kind": "VOUCHER",
          "label": "마일리지 바우처 (2년차~)",
          "year": "second",
          "tiers": [
            {
              "annualSpendMin": 10000000,
              "amount": 5000
            },
            {
              "annualSpendMin": 20000000,
              "amount": 10000
            },
            {
              "annualSpendMin": 30000000,
              "amount": 15000
            }
          ]
        }
      ],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "hyundai-first",
      "name": "현대 the First (단종)",
      "discontinued": true,
      "fee": {
        "listed": 500000,
        "calc": 380000,
        "voucherNote": "비마일 바우처 가치 차감"
      },
      "baseTiers": [
        {
          "min": 0,
          "unit": 1000,
          "per": 1
        }
      ],
      "lounge": {
        "text": "라운지 연 5회 + 바우처",
        "visits": 5,
        "voucher": true
      },
      "calcSheet": "현대카드",
      "calcResultCell": "입력!AG52",
      "sourceNotes": [
        "오류 10번: 단종군 시트에는 전월실적 조건이 없음(2탄은 50만원) — 상품별 확인 필요",
        "오류 8번: 2년차 행은 연회비를 반영한 값"
      ]
    },
    {
      "issuer": "현대카드",
      "group": "HYUNDAI_PREMIUM",
      "unit": "MR",
      "toMile": 0.6666666666666666,
      "rounding": "round",
      "earnExclude": [
        "EXPRESS_BUS",
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "APT_FEE",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "GAS_UTILITY",
        "UTILITY_ETC"
      ],
      "pools": [
        {
          "mode": "replace",
          "id": "overseas",
          "label": "해외 3 MR",
          "cats": [
            "OVERSEAS"
          ],
          "unit": 1000,
          "per": 3,
          "rule": "R8",
          "cap": {
            "type": "total",
            "value": 4500
          },
          "overflow": "base"
        },
        {
          "mode": "replace",
          "id": "golf",
          "label": "골프 3 MR",
          "cats": [
            "GOLF"
          ],
          "unit": 1000,
          "per": 3,
          "rule": "R8",
          "cap": {
            "type": "total",
            "value": 4500
          },
          "overflow": "base"
        },
        {
          "mode": "replace",
          "id": "hotel",
          "label": "국내 특급호텔 3 MR",
          "cats": [
            "HOTEL_LUXURY"
          ],
          "unit": 1000,
          "per": 3,
          "rule": "R8",
          "cap": {
            "type": "total",
            "value": 4500
          },
          "overflow": "base"
        },
        {
          "mode": "replace",
          "id": "duty",
          "label": "면세점(기내 포함) 3 MR",
          "cats": [
            "DUTYFREE_KE",
            "DUTYFREE"
          ],
          "unit": 1000,
          "per": 3,
          "rule": "R8",
          "cap": {
            "type": "total",
            "value": 4500
          },
          "overflow": "base"
        },
        {
          "mode": "replace",
          "id": "air",
          "label": "항공사 3 MR",
          "cats": [
            "AIR_KE",
            "AIR_OZ_GROUP",
            "AIR_ETC_DOM"
          ],
          "unit": 1000,
          "per": 3,
          "rule": "R8",
          "cap": {
            "type": "total",
            "value": 4500
          },
          "overflow": "base"
        }
      ],
      "bonuses": [],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "hyundai-amex-gold-e2",
      "name": "현대 아멕스 골드 edition2",
      "fee": {
        "listed": 300000,
        "calc": 50000,
        "voucherNote": "비마일 바우처 가치 차감"
      },
      "baseTiers": [
        {
          "min": 0,
          "unit": 1000,
          "per": 1
        }
      ],
      "gate": {
        "min": 500000,
        "exclude": [
          "TAX_NATIONAL",
          "TAX_LOCAL",
          "UTILITY_ETC"
        ]
      },
      "lounge": {
        "text": "PP카드 + 바우처",
        "visits": 0,
        "pp": true,
        "voucher": true
      },
      "calcSheet": "현대아멕스골드v2",
      "calcResultCell": "입력!AM52",
      "sourceNotes": [
        "1.5 MR = 1마일",
        "오류 8번: 계산기 '2년차 이상' 행은 연회비 미반영 값(연간 적립과 동일)"
      ]
    },
    {
      "issuer": "현대카드",
      "group": "HYUNDAI_PREMIUM",
      "unit": "MR",
      "toMile": 0.6666666666666666,
      "rounding": "round",
      "earnExclude": [
        "EXPRESS_BUS",
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "APT_FEE",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "GAS_UTILITY",
        "UTILITY_ETC"
      ],
      "pools": [
        {
          "mode": "replace",
          "id": "overseas",
          "label": "해외 5 MR",
          "cats": [
            "OVERSEAS"
          ],
          "unit": 1000,
          "per": 5,
          "rule": "R8",
          "cap": {
            "type": "total",
            "value": 15000
          },
          "overflow": "base"
        },
        {
          "mode": "replace",
          "id": "golf",
          "label": "골프 5 MR",
          "cats": [
            "GOLF"
          ],
          "unit": 1000,
          "per": 5,
          "rule": "R8",
          "cap": {
            "type": "total",
            "value": 15000
          },
          "overflow": "base"
        },
        {
          "mode": "replace",
          "id": "hotel",
          "label": "국내 특급호텔 5 MR",
          "cats": [
            "HOTEL_LUXURY"
          ],
          "unit": 1000,
          "per": 5,
          "rule": "R8",
          "cap": {
            "type": "total",
            "value": 15000
          },
          "overflow": "base"
        },
        {
          "mode": "replace",
          "id": "duty",
          "label": "면세점(기내 포함) 5 MR",
          "cats": [
            "DUTYFREE_KE",
            "DUTYFREE"
          ],
          "unit": 1000,
          "per": 5,
          "rule": "R8",
          "cap": {
            "type": "total",
            "value": 15000
          },
          "overflow": "base"
        },
        {
          "mode": "replace",
          "id": "air",
          "label": "항공사 5 MR",
          "cats": [
            "AIR_KE",
            "AIR_OZ_GROUP",
            "AIR_ETC_DOM"
          ],
          "unit": 1000,
          "per": 5,
          "rule": "R8",
          "cap": {
            "type": "total",
            "value": 15000
          },
          "overflow": "base"
        }
      ],
      "bonuses": [],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "hyundai-amex-platinum-e2",
      "name": "현대 아멕스 플래티넘 edition2",
      "fee": {
        "listed": 1000000,
        "calc": 150000,
        "voucherNote": "비마일 바우처 가치 차감"
      },
      "baseTiers": [
        {
          "min": 0,
          "unit": 1000,
          "per": 1
        }
      ],
      "gate": {
        "min": 500000,
        "exclude": [
          "TAX_NATIONAL",
          "TAX_LOCAL",
          "UTILITY_ETC"
        ]
      },
      "lounge": {
        "text": "라운지 연 10회 + 바우처",
        "visits": 10,
        "voucher": true
      },
      "calcSheet": "현대아멕스플래티넘v2",
      "calcResultCell": "입력!AP52",
      "sourceNotes": [
        "1.5 MR = 1마일",
        "오류 8번: 계산기 '2년차 이상' 행은 연회비 미반영 값(연간 적립과 동일)"
      ]
    },
    {
      "issuer": "현대카드",
      "group": "HYUNDAI_PREMIUM",
      "unit": "MR",
      "toMile": 0.6666666666666666,
      "rounding": "round",
      "earnExclude": [
        "EXPRESS_BUS",
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "APT_FEE",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "GAS_UTILITY",
        "UTILITY_ETC"
      ],
      "pools": [
        {
          "mode": "replace",
          "id": "ov-hotel",
          "label": "해외+국내 특급호텔 2 MR",
          "cats": [
            "OVERSEAS",
            "HOTEL_LUXURY"
          ],
          "unit": 1000,
          "per": 2,
          "rule": "R8",
          "gate": {
            "min": 500000,
            "exclude": []
          }
        },
        {
          "mode": "replace",
          "id": "golf-duty",
          "label": "골프+면세점 3 MR",
          "cats": [
            "DUTYFREE",
            "GOLF"
          ],
          "unit": 1000,
          "per": 3,
          "rule": "R8",
          "gate": {
            "min": 500000,
            "exclude": []
          }
        }
      ],
      "bonuses": [
        {
          "kind": "ANNUAL_BONUS",
          "label": "연간 보너스 (초년도)",
          "year": "first",
          "amount": 30000,
          "annualSpendMin": 1000000
        },
        {
          "kind": "ANNUAL_BONUS",
          "label": "연간 보너스 (2년차~)",
          "year": "second",
          "amount": 30000,
          "annualSpendMin": 24000000
        }
      ],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "hyundai-amex-gold-old",
      "name": "현대 아멕스 골드 (단종)",
      "discontinued": true,
      "fee": {
        "listed": 300000,
        "calc": 300000
      },
      "baseTiers": [
        {
          "min": 0,
          "unit": 1000,
          "per": 1
        }
      ],
      "lounge": {
        "text": "PP카드 + 바우처",
        "visits": 0,
        "pp": true,
        "voucher": true
      },
      "calcSheet": "현대아멕스골드",
      "calcResultCell": "입력!AS52",
      "sourceNotes": [
        "1.5 MR = 1마일"
      ]
    },
    {
      "issuer": "현대카드",
      "group": "HYUNDAI_PREMIUM",
      "unit": "MR",
      "toMile": 0.6666666666666666,
      "rounding": "round",
      "earnExclude": [
        "EXPRESS_BUS",
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "APT_FEE",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "GAS_UTILITY",
        "UTILITY_ETC"
      ],
      "pools": [
        {
          "mode": "replace",
          "id": "ov-hotel",
          "label": "해외+국내 특급호텔 3 MR",
          "cats": [
            "OVERSEAS",
            "HOTEL_LUXURY"
          ],
          "unit": 1000,
          "per": 3,
          "rule": "R8",
          "gate": {
            "min": 500000,
            "exclude": []
          }
        },
        {
          "mode": "replace",
          "id": "golf-duty",
          "label": "골프+면세점 4.5 MR",
          "cats": [
            "DUTYFREE",
            "GOLF"
          ],
          "unit": 1000,
          "per": 4.5,
          "rule": "R8",
          "gate": {
            "min": 500000,
            "exclude": []
          }
        }
      ],
      "bonuses": [
        {
          "kind": "ANNUAL_BONUS",
          "label": "연간 보너스 (초년도)",
          "year": "first",
          "amount": 100000,
          "annualSpendMin": 1000000
        },
        {
          "kind": "ANNUAL_BONUS",
          "label": "연간 보너스 (2년차~)",
          "year": "second",
          "amount": 100000,
          "annualSpendMin": 36000000
        }
      ],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "hyundai-amex-platinum-old",
      "name": "현대 아멕스 플래티넘 (단종)",
      "discontinued": true,
      "fee": {
        "listed": 1000000,
        "calc": 1000000
      },
      "baseTiers": [
        {
          "min": 0,
          "unit": 1000,
          "per": 1.5
        }
      ],
      "lounge": {
        "text": "PP카드 + 바우처",
        "visits": 0,
        "pp": true,
        "voucher": true
      },
      "calcSheet": "현대아멕스플래티넘",
      "calcResultCell": "입력!AV52",
      "sourceNotes": [
        "1.5 MR = 1마일"
      ]
    },
    {
      "issuer": "현대카드",
      "group": "HYUNDAI_PREMIUM",
      "unit": "MILE",
      "toMile": 1,
      "rounding": "ceil",
      "earnExclude": [
        "INS_PENSION_HEALTH",
        "INS_EMPLOY_ACCIDENT",
        "APT_FEE",
        "TAX_NATIONAL",
        "TAX_LOCAL",
        "GAS_UTILITY",
        "UTILITY_ETC"
      ],
      "pools": [],
      "bonuses": [
        {
          "kind": "ANNUAL_BONUS",
          "label": "연간 보너스",
          "year": "every",
          "amount": 14000,
          "annualSpendMin": 40000000
        }
      ],
      "side": [],
      "perks": {},
      "effectiveFrom": "2026-01-01",
      "effectiveTo": "2026-12-31",
      "status": "seed",
      "id": "hyundai-purple-osee",
      "name": "현대 The Purple osee",
      "fee": {
        "listed": 800000,
        "calc": 200000,
        "voucherNote": "60만원 바우처 차감"
      },
      "baseTiers": [
        {
          "min": 0,
          "unit": 1000,
          "per": 1
        }
      ],
      "lounge": {
        "text": "PP카드 + 바우처",
        "visits": 0,
        "pp": true,
        "voucher": true
      },
      "calcSheet": "현대더퍼플",
      "calcResultCell": "입력!AJ52",
      "sourceNotes": []
    }
  ]
}