[
  {
    "source": "sebas_bank",
    "source_ref": "photo-1354.jpg",
    "paid_by": "S",
    "date": "",
    "status": "pending",
    "merchant": "Albert Heijn 1653",
    "amount_usd": -14.07,
    "tx_key": "sebas_bank|photo-1354.jpg|S||pending|Albert Heijn 1653|-14.07",
    "id": "photo-1354.jpg:1",
    "type": "expense",
    "is_fee": false,
    "category_guess": "groceries",
    "country_guess": "NL",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Supermercado neerlandés.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1354.jpg",
    "paid_by": "S",
    "date": "",
    "status": "pending",
    "merchant": "Condomerie",
    "amount_usd": -8.21,
    "tx_key": "sebas_bank|photo-1354.jpg|S||pending|Condomerie|-8.21",
    "id": "photo-1354.jpg:2",
    "type": "expense",
    "is_fee": false,
    "category_guess": "shopping",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Sex shop conocido de Ámsterdam.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1354.jpg",
    "paid_by": "S",
    "date": "",
    "status": "pending",
    "merchant": "PRIMARK DAMRAK",
    "amount_usd": -3.75,
    "tx_key": "sebas_bank|photo-1354.jpg|S||pending|PRIMARK DAMRAK|-3.75",
    "id": "photo-1354.jpg:3",
    "type": "expense",
    "is_fee": false,
    "category_guess": "shopping",
    "country_guess": "NL",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Tienda de ropa y básicos de bajo costo.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1354.jpg",
    "paid_by": "S",
    "date": "",
    "status": "pending",
    "merchant": "Friet Point",
    "amount_usd": -22.81,
    "tx_key": "sebas_bank|photo-1354.jpg|S||pending|Friet Point|-22.81",
    "id": "photo-1354.jpg:4",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Local de papas fritas y comida rápida.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1354.jpg",
    "paid_by": "S",
    "date": "",
    "status": "pending",
    "merchant": "BCK*NS Groep N.V.",
    "amount_usd": -16.65,
    "tx_key": "sebas_bank|photo-1354.jpg|S||pending|BCK*NS Groep N.V.|-16.65",
    "id": "photo-1354.jpg:5",
    "type": "expense",
    "is_fee": false,
    "category_guess": "transport",
    "country_guess": "NL",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Ferrocarriles neerlandeses / transporte NS.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1355.jpg",
    "paid_by": "S",
    "date": "",
    "status": "pending",
    "merchant": "BCK*NS-Amsterdam 23",
    "amount_usd": -23.49,
    "tx_key": "sebas_bank|photo-1355.jpg|S||pending|BCK*NS-Amsterdam 23|-23.49",
    "id": "photo-1355.jpg:6",
    "type": "expense",
    "is_fee": false,
    "category_guess": "transport",
    "country_guess": "NL",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Transporte ferroviario neerlandés / NS.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1355.jpg",
    "paid_by": "S",
    "date": "",
    "status": "pending",
    "merchant": "R.J. Mulder B.V.",
    "amount_usd": -3.23,
    "tx_key": "sebas_bank|photo-1355.jpg|S||pending|R.J. Mulder B.V.|-3.23",
    "id": "photo-1355.jpg:7",
    "type": "expense",
    "is_fee": false,
    "category_guess": "other",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Tienda de quesos y delicatessen Henri Willig / R.J. Mulder en Ámsterdam.",
    "description_confidence": "media",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1355.jpg",
    "paid_by": "S",
    "date": "",
    "status": "pending",
    "merchant": "Het Karbeel",
    "amount_usd": -17.62,
    "tx_key": "sebas_bank|photo-1355.jpg|S||pending|Het Karbeel|-17.62",
    "id": "photo-1355.jpg:8",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Restaurante o brasserie en Warmoesstraat, Ámsterdam.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1355.jpg",
    "paid_by": "S",
    "date": "",
    "status": "pending",
    "merchant": "SumUp *La Belle Super",
    "amount_usd": -2.94,
    "tx_key": "sebas_bank|photo-1355.jpg|S||pending|SumUp *La Belle Super|-2.94",
    "id": "photo-1355.jpg:9",
    "type": "expense",
    "is_fee": false,
    "category_guess": "groceries",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Minimercado o grocery shop en Ámsterdam.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1355.jpg",
    "paid_by": "S",
    "date": "",
    "status": "pending",
    "merchant": "Temple Bar",
    "amount_usd": -14.45,
    "tx_key": "sebas_bank|photo-1355.jpg|S||pending|Temple Bar|-14.45",
    "id": "photo-1355.jpg:10",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Pub irlandés / bar en Ámsterdam.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1355.jpg",
    "paid_by": "S",
    "date": "",
    "status": "pending",
    "merchant": "Albert Heijn 1262",
    "amount_usd": -24.81,
    "tx_key": "sebas_bank|photo-1355.jpg|S||pending|Albert Heijn 1262|-24.81",
    "id": "photo-1355.jpg:11",
    "type": "expense",
    "is_fee": false,
    "category_guess": "groceries",
    "country_guess": "NL",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Supermercado neerlandés.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1355.jpg",
    "paid_by": "S",
    "date": "",
    "status": "pending",
    "merchant": "McDonald's Zaanstd WC",
    "amount_usd": -1.17,
    "tx_key": "sebas_bank|photo-1355.jpg|S||pending|McDonald's Zaanstd WC|-1.17",
    "id": "photo-1355.jpg:12",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comida rápida McDonald’s.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1355.jpg",
    "paid_by": "S",
    "date": "",
    "status": "pending",
    "merchant": "McDonald's Zaanstd WC",
    "amount_usd": -1.17,
    "tx_key": "sebas_bank|photo-1355.jpg|S||pending|McDonald's Zaanstd WC|-1.17",
    "id": "photo-1355.jpg:13",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comida rápida McDonald’s.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1355.jpg",
    "paid_by": "S",
    "date": "",
    "status": "pending",
    "merchant": "Victoria Hotel FB_MRRAB",
    "amount_usd": -9.87,
    "tx_key": "sebas_bank|photo-1355.jpg|S||pending|Victoria Hotel FB_MRRAB|-9.87",
    "id": "photo-1355.jpg:14",
    "type": "expense",
    "is_fee": false,
    "category_guess": "lodging",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Consumo en hotel.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1355.jpg",
    "paid_by": "S",
    "date": "",
    "status": "pending",
    "merchant": "Flagship Amsterdam B.V",
    "amount_usd": -77.4,
    "tx_key": "sebas_bank|photo-1355.jpg|S||pending|Flagship Amsterdam B.V|-77.40",
    "id": "photo-1355.jpg:15",
    "type": "expense",
    "is_fee": false,
    "category_guess": "attraction",
    "country_guess": "NL",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Paseo turístico en barco por canales de Ámsterdam.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1356.jpg",
    "paid_by": "S",
    "date": "05/14/2026",
    "status": "posted",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -1.57,
    "tx_key": "sebas_bank|photo-1356.jpg|S|05/14/2026|posted|FEE FOR INTERNATIONAL TRANSACTION|-1.57",
    "id": "photo-1356.jpg:16",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1356.jpg",
    "paid_by": "S",
    "date": "05/14/2026",
    "status": "posted",
    "merchant": "VISA CCV*IL PRIMO AMSTERDAM NL ON 05-13 2561",
    "amount_usd": -52.47,
    "tx_key": "sebas_bank|photo-1356.jpg|S|05/14/2026|posted|VISA CCV*IL PRIMO AMSTERDAM NL ON 05-13 2561|-52.47",
    "id": "photo-1356.jpg:17",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "NL",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Restaurante italiano.",
    "description_confidence": "media",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1356.jpg",
    "paid_by": "S",
    "date": "05/14/2026",
    "status": "posted",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -0.67,
    "tx_key": "sebas_bank|photo-1356.jpg|S|05/14/2026|posted|FEE FOR INTERNATIONAL TRANSACTION|-0.67",
    "id": "photo-1356.jpg:18",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1356.jpg",
    "paid_by": "S",
    "date": "05/14/2026",
    "status": "posted",
    "merchant": "VISA Van Gogh Museum Amsterdam NL ON 05-13 2561",
    "amount_usd": -22.23,
    "tx_key": "sebas_bank|photo-1356.jpg|S|05/14/2026|posted|VISA Van Gogh Museum Amsterdam NL ON 05-13 2561|-22.23",
    "id": "photo-1356.jpg:19",
    "type": "expense",
    "is_fee": false,
    "category_guess": "attraction",
    "country_guess": "NL",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Entrada al Museo Van Gogh.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1356.jpg",
    "paid_by": "S",
    "date": "05/14/2026",
    "status": "posted",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -0.62,
    "tx_key": "sebas_bank|photo-1356.jpg|S|05/14/2026|posted|FEE FOR INTERNATIONAL TRANSACTION|-0.62",
    "id": "photo-1356.jpg:20",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1356.jpg",
    "paid_by": "S",
    "date": "05/14/2026",
    "status": "posted",
    "merchant": "VISA Anne Frank Stichting Amsterdam NL ON 05-13 2561",
    "amount_usd": -20.58,
    "tx_key": "sebas_bank|photo-1356.jpg|S|05/14/2026|posted|VISA Anne Frank Stichting Amsterdam NL ON 05-13 2561|-20.58",
    "id": "photo-1356.jpg:21",
    "type": "expense",
    "is_fee": false,
    "category_guess": "attraction",
    "country_guess": "NL",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Entrada a la Casa de Ana Frank.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1357.jpg",
    "paid_by": "S",
    "date": "05/14/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -0.27,
    "tx_key": "sebas_bank|photo-1357.jpg|S|05/14/2026||FEE FOR INTERNATIONAL TRANSACTION|-0.27",
    "id": "photo-1357.jpg:22",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1357.jpg",
    "paid_by": "S",
    "date": "05/14/2026",
    "status": "",
    "merchant": "VISA CCV*V.O.F. TWINKIES BUSSUM NL ON 05-13 2561",
    "amount_usd": -8.84,
    "tx_key": "sebas_bank|photo-1357.jpg|S|05/14/2026||VISA CCV*V.O.F. TWINKIES BUSSUM NL ON 05-13 2561|-8.84",
    "id": "photo-1357.jpg:23",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "NL",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Panadería, café o local de brunch en Bussum.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1357.jpg",
    "paid_by": "S",
    "date": "05/14/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -0.26,
    "tx_key": "sebas_bank|photo-1357.jpg|S|05/14/2026||FEE FOR INTERNATIONAL TRANSACTION|-0.26",
    "id": "photo-1357.jpg:24",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1357.jpg",
    "paid_by": "S",
    "date": "05/14/2026",
    "status": "",
    "merchant": "VISA JUMBO AMSTERDAM CITY DA AMSTERDAM NL ON 05-13 2561",
    "amount_usd": -8.51,
    "tx_key": "sebas_bank|photo-1357.jpg|S|05/14/2026||VISA JUMBO AMSTERDAM CITY DA AMSTERDAM NL ON 05-13 2561|-8.51",
    "id": "photo-1357.jpg:25",
    "type": "expense",
    "is_fee": false,
    "category_guess": "groceries",
    "country_guess": "NL",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Cadena de supermercado en Países Bajos.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1357.jpg",
    "paid_by": "S",
    "date": "05/13/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -0.18,
    "tx_key": "sebas_bank|photo-1357.jpg|S|05/13/2026||FEE FOR INTERNATIONAL TRANSACTION|-0.18",
    "id": "photo-1357.jpg:26",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1357.jpg",
    "paid_by": "S",
    "date": "05/13/2026",
    "status": "",
    "merchant": "VISA CCV*LAMOR AMSTERDAM NL ON 05-12 2561",
    "amount_usd": -5.9,
    "tx_key": "sebas_bank|photo-1357.jpg|S|05/13/2026||VISA CCV*LAMOR AMSTERDAM NL ON 05-12 2561|-5.90",
    "id": "photo-1357.jpg:27",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "NL",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Bar o restaurante La Mor / Lamor en Ámsterdam.",
    "description_confidence": "media",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1357.jpg",
    "paid_by": "S",
    "date": "05/13/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -0.42,
    "tx_key": "sebas_bank|photo-1357.jpg|S|05/13/2026||FEE FOR INTERNATIONAL TRANSACTION|-0.42",
    "id": "photo-1357.jpg:28",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1358.jpg",
    "paid_by": "S",
    "date": "05/13/2026",
    "status": "",
    "merchant": "VISA CCV*LAMOR AMSTERDAM NL ON 05-12 2561",
    "amount_usd": -14.15,
    "tx_key": "sebas_bank|photo-1358.jpg|S|05/13/2026||VISA CCV*LAMOR AMSTERDAM NL ON 05-12 2561|-14.15",
    "id": "photo-1358.jpg:29",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "NL",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Bar o restaurante La Mor / Lamor en Ámsterdam.",
    "description_confidence": "media",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1358.jpg",
    "paid_by": "S",
    "date": "05/13/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -0.57,
    "tx_key": "sebas_bank|photo-1358.jpg|S|05/13/2026||FEE FOR INTERNATIONAL TRANSACTION|-0.57",
    "id": "photo-1358.jpg:30",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1358.jpg",
    "paid_by": "S",
    "date": "05/13/2026",
    "status": "",
    "merchant": "VISA The Bulldog First Amsterdam NL ON 05-12 2561",
    "amount_usd": -18.87,
    "tx_key": "sebas_bank|photo-1358.jpg|S|05/13/2026||VISA The Bulldog First Amsterdam NL ON 05-12 2561|-18.87",
    "id": "photo-1358.jpg:31",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "NL",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Coffee shop/bar de Ámsterdam.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1358.jpg",
    "paid_by": "S",
    "date": "05/13/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -0.23,
    "tx_key": "sebas_bank|photo-1358.jpg|S|05/13/2026||FEE FOR INTERNATIONAL TRANSACTION|-0.23",
    "id": "photo-1358.jpg:32",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1358.jpg",
    "paid_by": "S",
    "date": "05/13/2026",
    "status": "",
    "merchant": "VISA THE GAME GALAXY AMSTERDAM NL ON 05-12 2561",
    "amount_usd": -7.67,
    "tx_key": "sebas_bank|photo-1358.jpg|S|05/13/2026||VISA THE GAME GALAXY AMSTERDAM NL ON 05-12 2561|-7.67",
    "id": "photo-1358.jpg:33",
    "type": "expense",
    "is_fee": false,
    "category_guess": "other",
    "country_guess": "NL",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Arcade o local de videojuegos en Ámsterdam.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1358.jpg",
    "paid_by": "S",
    "date": "05/13/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -0.25,
    "tx_key": "sebas_bank|photo-1358.jpg|S|05/13/2026||FEE FOR INTERNATIONAL TRANSACTION|-0.25",
    "id": "photo-1358.jpg:34",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1359.jpg",
    "paid_by": "S",
    "date": "05/13/2026",
    "status": "",
    "merchant": "VISA Cafe Katoen Amsterdam NL ON 05-12 2561",
    "amount_usd": -8.49,
    "tx_key": "sebas_bank|photo-1359.jpg|S|05/13/2026||VISA Cafe Katoen Amsterdam NL ON 05-12 2561|-8.49",
    "id": "photo-1359.jpg:35",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "NL",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Café o restaurante Café Katoen en Ámsterdam.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1359.jpg",
    "paid_by": "S",
    "date": "05/13/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -0.23,
    "tx_key": "sebas_bank|photo-1359.jpg|S|05/13/2026||FEE FOR INTERNATIONAL TRANSACTION|-0.23",
    "id": "photo-1359.jpg:36",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1359.jpg",
    "paid_by": "S",
    "date": "05/13/2026",
    "status": "",
    "merchant": "VISA fa. B.Smit AMSTERDAM NL ON 05-12 2561",
    "amount_usd": -7.67,
    "tx_key": "sebas_bank|photo-1359.jpg|S|05/13/2026||VISA fa. B.Smit AMSTERDAM NL ON 05-12 2561|-7.67",
    "id": "photo-1359.jpg:37",
    "type": "expense",
    "is_fee": false,
    "category_guess": "shopping",
    "country_guess": "NL",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Tienda de souvenirs, regalos o retail pequeño en Ámsterdam.",
    "description_confidence": "media",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1359.jpg",
    "paid_by": "S",
    "date": "05/13/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -0.53,
    "tx_key": "sebas_bank|photo-1359.jpg|S|05/13/2026||FEE FOR INTERNATIONAL TRANSACTION|-0.53",
    "id": "photo-1359.jpg:38",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1359.jpg",
    "paid_by": "S",
    "date": "05/13/2026",
    "status": "",
    "merchant": "VISA BCK*GHM B B B.V. AMSTERDAM NL ON 05-12 2561",
    "amount_usd": -17.69,
    "tx_key": "sebas_bank|photo-1359.jpg|S|05/13/2026||VISA BCK*GHM B B B.V. AMSTERDAM NL ON 05-12 2561|-17.69",
    "id": "photo-1359.jpg:39",
    "type": "expense",
    "is_fee": false,
    "category_guess": "other",
    "country_guess": "NL",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Bar, café o comercio gastronómico local en Ámsterdam.",
    "description_confidence": "media",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1359.jpg",
    "paid_by": "S",
    "date": "05/13/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -0.76,
    "tx_key": "sebas_bank|photo-1359.jpg|S|05/13/2026||FEE FOR INTERNATIONAL TRANSACTION|-0.76",
    "id": "photo-1359.jpg:40",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1360.jpg",
    "paid_by": "S",
    "date": "05/13/2026",
    "status": "",
    "merchant": "VISA CITY PHONE INTERNET AMSTERDAM NL ON 05-12 2561",
    "amount_usd": -25.35,
    "tx_key": "sebas_bank|photo-1360.jpg|S|05/13/2026||VISA CITY PHONE INTERNET AMSTERDAM NL ON 05-12 2561|-25.35",
    "id": "photo-1360.jpg:41",
    "type": "expense",
    "is_fee": false,
    "category_guess": "shopping",
    "country_guess": "NL",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Tienda de telefonía o accesorios.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1360.jpg",
    "paid_by": "S",
    "date": "05/13/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -0.5,
    "tx_key": "sebas_bank|photo-1360.jpg|S|05/13/2026||FEE FOR INTERNATIONAL TRANSACTION|-0.50",
    "id": "photo-1360.jpg:42",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1360.jpg",
    "paid_by": "S",
    "date": "05/13/2026",
    "status": "",
    "merchant": "VISA BCK*NS SCHIPHOL 215 LUCHTHAVEN SC NL ON 05-12 2561",
    "amount_usd": -16.75,
    "tx_key": "sebas_bank|photo-1360.jpg|S|05/13/2026||VISA BCK*NS SCHIPHOL 215 LUCHTHAVEN SC NL ON 05-12 2561|-16.75",
    "id": "photo-1360.jpg:43",
    "type": "expense",
    "is_fee": false,
    "category_guess": "transport",
    "country_guess": "NL",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Compra o transporte en el aeropuerto Schiphol.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1360.jpg",
    "paid_by": "S",
    "date": "05/13/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -0.94,
    "tx_key": "sebas_bank|photo-1360.jpg|S|05/13/2026||FEE FOR INTERNATIONAL TRANSACTION|-0.94",
    "id": "photo-1360.jpg:44",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1360.jpg",
    "paid_by": "S",
    "date": "05/13/2026",
    "status": "",
    "merchant": "VISA AEROP. ADOLFO SUAREZ MADRID ES ON 05-12 2561",
    "amount_usd": -31.3,
    "tx_key": "sebas_bank|photo-1360.jpg|S|05/13/2026||VISA AEROP. ADOLFO SUAREZ MADRID ES ON 05-12 2561|-31.30",
    "id": "photo-1360.jpg:45",
    "type": "expense",
    "is_fee": false,
    "category_guess": "transport",
    "country_guess": "ES",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Cargo en aeropuerto Madrid-Barajas.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1360.jpg",
    "paid_by": "S",
    "date": "05/13/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -1.17,
    "tx_key": "sebas_bank|photo-1360.jpg|S|05/13/2026||FEE FOR INTERNATIONAL TRANSACTION|-1.17",
    "id": "photo-1360.jpg:46",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1360.jpg",
    "paid_by": "S",
    "date": "05/13/2026",
    "status": "",
    "merchant": "VISA UBR*PENDING.UBER.COM AMSTERDAM NL ON 05-12 2561",
    "amount_usd": -38.92,
    "tx_key": "sebas_bank|photo-1360.jpg|S|05/13/2026||VISA UBR*PENDING.UBER.COM AMSTERDAM NL ON 05-12 2561|-38.92",
    "id": "photo-1360.jpg:47",
    "type": "expense",
    "is_fee": false,
    "category_guess": "transport",
    "country_guess": "NL",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Viaje o cargo pendiente de Uber.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1361.jpg",
    "paid_by": "S",
    "date": "05/13/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -0.46,
    "tx_key": "sebas_bank|photo-1361.jpg|S|05/13/2026||FEE FOR INTERNATIONAL TRANSACTION|-0.46",
    "id": "photo-1361.jpg:48",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1361.jpg",
    "paid_by": "S",
    "date": "05/13/2026",
    "status": "",
    "merchant": "VISA INTRUSO MADRID ES ON 05-11 2561",
    "amount_usd": -15.31,
    "tx_key": "sebas_bank|photo-1361.jpg|S|05/13/2026||VISA INTRUSO MADRID ES ON 05-11 2561|-15.31",
    "id": "photo-1361.jpg:49",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "ES",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Bar, café o restaurante Intruso en Madrid.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1361.jpg",
    "paid_by": "S",
    "date": "05/12/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -0.46,
    "tx_key": "sebas_bank|photo-1361.jpg|S|05/12/2026||FEE FOR INTERNATIONAL TRANSACTION|-0.46",
    "id": "photo-1361.jpg:50",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1361.jpg",
    "paid_by": "S",
    "date": "05/12/2026",
    "status": "",
    "merchant": "VISA INTRUSO MADRID ES ON 05-11 2561",
    "amount_usd": -15.31,
    "tx_key": "sebas_bank|photo-1361.jpg|S|05/12/2026||VISA INTRUSO MADRID ES ON 05-11 2561|-15.31",
    "id": "photo-1361.jpg:51",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "ES",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Bar, café o restaurante Intruso en Madrid.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1361.jpg",
    "paid_by": "S",
    "date": "05/12/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -0.28,
    "tx_key": "sebas_bank|photo-1361.jpg|S|05/12/2026||FEE FOR INTERNATIONAL TRANSACTION|-0.28",
    "id": "photo-1361.jpg:52",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1361.jpg",
    "paid_by": "S",
    "date": "05/12/2026",
    "status": "",
    "merchant": "VISA EL CORTE INGLES MADRID ES ON 05-11 2561",
    "amount_usd": -9.42,
    "tx_key": "sebas_bank|photo-1361.jpg|S|05/12/2026||VISA EL CORTE INGLES MADRID ES ON 05-11 2561|-9.42",
    "id": "photo-1361.jpg:53",
    "type": "expense",
    "is_fee": false,
    "category_guess": "shopping",
    "country_guess": "ES",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Gran tienda por departamentos.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1362.jpg",
    "paid_by": "S",
    "date": "05/12/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -2.83,
    "tx_key": "sebas_bank|photo-1362.jpg|S|05/12/2026||FEE FOR INTERNATIONAL TRANSACTION|-2.83",
    "id": "photo-1362.jpg:54",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1362.jpg",
    "paid_by": "S",
    "date": "05/12/2026",
    "status": "",
    "merchant": "VISA EL CORTE INGLES MADRID ES ON 05-11 2561",
    "amount_usd": -94.26,
    "tx_key": "sebas_bank|photo-1362.jpg|S|05/12/2026||VISA EL CORTE INGLES MADRID ES ON 05-11 2561|-94.26",
    "id": "photo-1362.jpg:55",
    "type": "expense",
    "is_fee": false,
    "category_guess": "shopping",
    "country_guess": "ES",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Gran tienda por departamentos.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1362.jpg",
    "paid_by": "S",
    "date": "05/12/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -4.99,
    "tx_key": "sebas_bank|photo-1362.jpg|S|05/12/2026||FEE FOR INTERNATIONAL TRANSACTION|-4.99",
    "id": "photo-1362.jpg:56",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1362.jpg",
    "paid_by": "S",
    "date": "05/12/2026",
    "status": "",
    "merchant": "VISA LEFTIES MADRID ES ON 05-11 2561",
    "amount_usd": -166.2,
    "tx_key": "sebas_bank|photo-1362.jpg|S|05/12/2026||VISA LEFTIES MADRID ES ON 05-11 2561|-166.20",
    "id": "photo-1362.jpg:57",
    "type": "expense",
    "is_fee": false,
    "category_guess": "shopping",
    "country_guess": "ES",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Tienda de ropa del grupo Inditex.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1362.jpg",
    "paid_by": "S",
    "date": "05/12/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -0.42,
    "tx_key": "sebas_bank|photo-1362.jpg|S|05/12/2026||FEE FOR INTERNATIONAL TRANSACTION|-0.42",
    "id": "photo-1362.jpg:58",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1362.jpg",
    "paid_by": "S",
    "date": "05/12/2026",
    "status": "",
    "merchant": "VISA PHONE SHOP II GRAN VIA ESCALINATA DE ES ON 05-11 2561",
    "amount_usd": -14.15,
    "tx_key": "sebas_bank|photo-1362.jpg|S|05/12/2026||VISA PHONE SHOP II GRAN VIA ESCALINATA DE ES ON 05-11 2561|-14.15",
    "id": "photo-1362.jpg:59",
    "type": "expense",
    "is_fee": false,
    "category_guess": "shopping",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Tienda de telefonía o accesorios.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1363.jpg",
    "paid_by": "S",
    "date": "05/11/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -1.41,
    "tx_key": "sebas_bank|photo-1363.jpg|S|05/11/2026||FEE FOR INTERNATIONAL TRANSACTION|-1.41",
    "id": "photo-1363.jpg:60",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1363.jpg",
    "paid_by": "S",
    "date": "05/11/2026",
    "status": "",
    "merchant": "VISA UNIQLO GranVia Madrid ES ON 05-10 2561",
    "amount_usd": -47.04,
    "tx_key": "sebas_bank|photo-1363.jpg|S|05/11/2026||VISA UNIQLO GranVia Madrid ES ON 05-10 2561|-47.04",
    "id": "photo-1363.jpg:61",
    "type": "expense",
    "is_fee": false,
    "category_guess": "shopping",
    "country_guess": "ES",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Tienda de ropa Uniqlo.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1363.jpg",
    "paid_by": "S",
    "date": "05/11/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -10.06,
    "tx_key": "sebas_bank|photo-1363.jpg|S|05/11/2026||FEE FOR INTERNATIONAL TRANSACTION|-10.06",
    "id": "photo-1363.jpg:62",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1363.jpg",
    "paid_by": "S",
    "date": "05/11/2026",
    "status": "",
    "merchant": "VISA UNIQLO GranVia Madrid ES ON 05-10 2561",
    "amount_usd": -335.31,
    "tx_key": "sebas_bank|photo-1363.jpg|S|05/11/2026||VISA UNIQLO GranVia Madrid ES ON 05-10 2561|-335.31",
    "id": "photo-1363.jpg:63",
    "type": "expense",
    "is_fee": false,
    "category_guess": "shopping",
    "country_guess": "ES",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Tienda de ropa Uniqlo.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1363.jpg",
    "paid_by": "S",
    "date": "05/11/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -0.99,
    "tx_key": "sebas_bank|photo-1363.jpg|S|05/11/2026||FEE FOR INTERNATIONAL TRANSACTION|-0.99",
    "id": "photo-1363.jpg:64",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1363.jpg",
    "paid_by": "S",
    "date": "05/11/2026",
    "status": "",
    "merchant": "VISA Cabify ES 2619qlqSubba Madrid ES ON 05-10 2561",
    "amount_usd": -32.88,
    "tx_key": "sebas_bank|photo-1363.jpg|S|05/11/2026||VISA Cabify ES 2619qlqSubba Madrid ES ON 05-10 2561|-32.88",
    "id": "photo-1363.jpg:65",
    "type": "expense",
    "is_fee": false,
    "category_guess": "transport",
    "country_guess": "ES",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Viaje en Cabify.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1363.jpg",
    "paid_by": "S",
    "date": "05/11/2026",
    "status": "",
    "merchant": "ACH TRANSF INTERACTIVE BROK",
    "amount_usd": 3000.0,
    "tx_key": "sebas_bank|photo-1363.jpg|S|05/11/2026||ACH TRANSF INTERACTIVE BROK|3000.00",
    "id": "photo-1363.jpg:66",
    "type": "income",
    "is_fee": false,
    "category_guess": "transfer",
    "country_guess": "",
    "trip_scope": "non_trip",
    "allocation": "",
    "description": "Transferencia desde Interactive Brokers.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1364.jpg",
    "paid_by": "S",
    "date": "03/09/2026",
    "status": "",
    "merchant": "VISA Amazon web services aws.amazon.co WA ON 03-06 2561",
    "amount_usd": -0.24,
    "tx_key": "sebas_bank|photo-1364.jpg|S|03/09/2026||VISA Amazon web services aws.amazon.co WA ON 03-06 2561|-0.24",
    "id": "photo-1364.jpg:67",
    "type": "expense",
    "is_fee": false,
    "category_guess": "subscription",
    "country_guess": "US/CA",
    "trip_scope": "non_trip",
    "allocation": "",
    "description": "Cargo de AWS / infraestructura cloud.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1364.jpg",
    "paid_by": "S",
    "date": "03/04/2026",
    "status": "",
    "merchant": "VISA VERCEL DOMAINS VERCEL.COM CA ON 03-03 2561",
    "amount_usd": -15.0,
    "tx_key": "sebas_bank|photo-1364.jpg|S|03/04/2026||VISA VERCEL DOMAINS VERCEL.COM CA ON 03-03 2561|-15.00",
    "id": "photo-1364.jpg:68",
    "type": "expense",
    "is_fee": false,
    "category_guess": "transport",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Dominio o servicio de Vercel.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1364.jpg",
    "paid_by": "S",
    "date": "03/03/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -20.18,
    "tx_key": "sebas_bank|photo-1364.jpg|S|03/03/2026||FEE FOR INTERNATIONAL TRANSACTION|-20.18",
    "id": "photo-1364.jpg:69",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1364.jpg",
    "paid_by": "S",
    "date": "03/03/2026",
    "status": "",
    "merchant": "VISA VILLAGE ROSA*Vill IMBITUBA BR ON 03-02 2561",
    "amount_usd": -672.57,
    "tx_key": "sebas_bank|photo-1364.jpg|S|03/03/2026||VISA VILLAGE ROSA*Vill IMBITUBA BR ON 03-02 2561|-672.57",
    "id": "photo-1364.jpg:70",
    "type": "expense",
    "is_fee": false,
    "category_guess": "lodging",
    "country_guess": "BR",
    "trip_scope": "non_trip",
    "allocation": "",
    "description": "Alojamiento en Brasil; fuera del viaje Europa.",
    "description_confidence": "media",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1364.jpg",
    "paid_by": "S",
    "date": "02/20/2026",
    "status": "",
    "merchant": "VISA OPENAI *CHATGPT SUBSCR OPENAI.COM CA ON 02-19 2561",
    "amount_usd": -20.0,
    "tx_key": "sebas_bank|photo-1364.jpg|S|02/20/2026||VISA OPENAI *CHATGPT SUBSCR OPENAI.COM CA ON 02-19 2561|-20.00",
    "id": "photo-1364.jpg:71",
    "type": "expense",
    "is_fee": false,
    "category_guess": "subscription",
    "country_guess": "US/CA",
    "trip_scope": "non_trip",
    "allocation": "",
    "description": "Suscripción de OpenAI / ChatGPT.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1365.jpg",
    "paid_by": "S",
    "date": "03/09/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -1.82,
    "tx_key": "sebas_bank|photo-1365.jpg|S|03/09/2026||FEE FOR INTERNATIONAL TRANSACTION|-1.82",
    "id": "photo-1365.jpg:72",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1365.jpg",
    "paid_by": "S",
    "date": "03/09/2026",
    "status": "",
    "merchant": "VISA Omio Berlin DE ON 03-06 2561",
    "amount_usd": -60.67,
    "tx_key": "sebas_bank|photo-1365.jpg|S|03/09/2026||VISA Omio Berlin DE ON 03-06 2561|-60.67",
    "id": "photo-1365.jpg:73",
    "type": "expense",
    "is_fee": false,
    "category_guess": "transport",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Pasaje o reserva de transporte vía Omio.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1365.jpg",
    "paid_by": "S",
    "date": "03/09/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -2.23,
    "tx_key": "sebas_bank|photo-1365.jpg|S|03/09/2026||FEE FOR INTERNATIONAL TRANSACTION|-2.23",
    "id": "photo-1365.jpg:74",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1365.jpg",
    "paid_by": "S",
    "date": "03/09/2026",
    "status": "",
    "merchant": "VISA Omio Berlin DE ON 03-06 2561",
    "amount_usd": -74.27,
    "tx_key": "sebas_bank|photo-1365.jpg|S|03/09/2026||VISA Omio Berlin DE ON 03-06 2561|-74.27",
    "id": "photo-1365.jpg:75",
    "type": "expense",
    "is_fee": false,
    "category_guess": "transport",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Pasaje o reserva de transporte vía Omio.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1365.jpg",
    "paid_by": "S",
    "date": "03/09/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -6.13,
    "tx_key": "sebas_bank|photo-1365.jpg|S|03/09/2026||FEE FOR INTERNATIONAL TRANSACTION|-6.13",
    "id": "photo-1365.jpg:76",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1365.jpg",
    "paid_by": "S",
    "date": "03/09/2026",
    "status": "",
    "merchant": "VISA Omio Berlin DE ON 03-06 2561",
    "amount_usd": -204.35,
    "tx_key": "sebas_bank|photo-1365.jpg|S|03/09/2026||VISA Omio Berlin DE ON 03-06 2561|-204.35",
    "id": "photo-1365.jpg:77",
    "type": "expense",
    "is_fee": false,
    "category_guess": "transport",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Pasaje o reserva de transporte vía Omio.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1365.jpg",
    "paid_by": "S",
    "date": "03/09/2026",
    "status": "",
    "merchant": "VISA GoEuro Corp Fort Myers FL ON 03-06 2561",
    "amount_usd": -196.27,
    "tx_key": "sebas_bank|photo-1365.jpg|S|03/09/2026||VISA GoEuro Corp Fort Myers FL ON 03-06 2561|-196.27",
    "id": "photo-1365.jpg:78",
    "type": "expense",
    "is_fee": false,
    "category_guess": "transport",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Pasaje o reserva de transporte de Omio/GoEuro.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1366.jpg",
    "paid_by": "S",
    "date": "03/30/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -2.63,
    "tx_key": "sebas_bank|photo-1366.jpg|S|03/30/2026||FEE FOR INTERNATIONAL TRANSACTION|-2.63",
    "id": "photo-1366.jpg:79",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1366.jpg",
    "paid_by": "S",
    "date": "03/30/2026",
    "status": "",
    "merchant": "VISA LOUVRETICKET INT272690575PARIS FR ON 03-28 2561",
    "amount_usd": -87.77,
    "tx_key": "sebas_bank|photo-1366.jpg|S|03/30/2026||VISA LOUVRETICKET INT272690575PARIS FR ON 03-28 2561|-87.77",
    "id": "photo-1366.jpg:80",
    "type": "expense",
    "is_fee": false,
    "category_guess": "attraction",
    "country_guess": "FR",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Entrada al Museo del Louvre.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1366.jpg",
    "paid_by": "S",
    "date": "03/26/2026",
    "status": "",
    "merchant": "PAYMENTS 'Deel, IE97G2XSJ",
    "amount_usd": 1595.0,
    "tx_key": "sebas_bank|photo-1366.jpg|S|03/26/2026||PAYMENTS 'Deel, IE97G2XSJ|1595.00",
    "id": "photo-1366.jpg:81",
    "type": "income",
    "is_fee": false,
    "category_guess": "transfer",
    "country_guess": "",
    "trip_scope": "non_trip",
    "allocation": "",
    "description": "Transferencia o pago recibido vía Deel.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1366.jpg",
    "paid_by": "S",
    "date": "03/20/2026",
    "status": "",
    "merchant": "VISA OPENAI *CHATGPT SUBSCR OPENAI.COM CA ON 03-19 2561",
    "amount_usd": -20.0,
    "tx_key": "sebas_bank|photo-1366.jpg|S|03/20/2026||VISA OPENAI *CHATGPT SUBSCR OPENAI.COM CA ON 03-19 2561|-20.00",
    "id": "photo-1366.jpg:82",
    "type": "expense",
    "is_fee": false,
    "category_guess": "subscription",
    "country_guess": "US/CA",
    "trip_scope": "non_trip",
    "allocation": "",
    "description": "Suscripción de OpenAI / ChatGPT.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1366.jpg",
    "paid_by": "S",
    "date": "03/17/2026",
    "status": "",
    "merchant": "MONTHLY ACCOUNT SERVICE FEE",
    "amount_usd": -12.0,
    "tx_key": "sebas_bank|photo-1366.jpg|S|03/17/2026||MONTHLY ACCOUNT SERVICE FEE|-12.00",
    "id": "photo-1366.jpg:83",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Cargo mensual de mantenimiento de cuenta.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1366.jpg",
    "paid_by": "S",
    "date": "03/09/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -10.22,
    "tx_key": "sebas_bank|photo-1366.jpg|S|03/09/2026||FEE FOR INTERNATIONAL TRANSACTION|-10.22",
    "id": "photo-1366.jpg:84",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1366.jpg",
    "paid_by": "S",
    "date": "03/09/2026",
    "status": "",
    "merchant": "VISA Omio Berlin DE ON 03-06 2561",
    "amount_usd": -340.83,
    "tx_key": "sebas_bank|photo-1366.jpg|S|03/09/2026||VISA Omio Berlin DE ON 03-06 2561|-340.83",
    "id": "photo-1366.jpg:85",
    "type": "expense",
    "is_fee": false,
    "category_guess": "transport",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Pasaje o reserva de transporte vía Omio.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1367.jpg",
    "paid_by": "S",
    "date": "04/02/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -2.64,
    "tx_key": "sebas_bank|photo-1367.jpg|S|04/02/2026||FEE FOR INTERNATIONAL TRANSACTION|-2.64",
    "id": "photo-1367.jpg:86",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1367.jpg",
    "paid_by": "S",
    "date": "04/02/2026",
    "status": "",
    "merchant": "VISA SAGRADA FAMILIA WEB B2C PAGES, PASSAT ES ON 04-01 2561",
    "amount_usd": -87.89,
    "tx_key": "sebas_bank|photo-1367.jpg|S|04/02/2026||VISA SAGRADA FAMILIA WEB B2C PAGES, PASSAT ES ON 04-01 2561|-87.89",
    "id": "photo-1367.jpg:87",
    "type": "expense",
    "is_fee": false,
    "category_guess": "attraction",
    "country_guess": "ES",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Entrada a la Sagrada Familia.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1367.jpg",
    "paid_by": "S",
    "date": "04/02/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -1.7,
    "tx_key": "sebas_bank|photo-1367.jpg|S|04/02/2026||FEE FOR INTERNATIONAL TRANSACTION|-1.70",
    "id": "photo-1367.jpg:88",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1367.jpg",
    "paid_by": "S",
    "date": "04/02/2026",
    "status": "",
    "merchant": "VISA Buckaroo *www annef AMSTERDAM NL ON 04-01 2561",
    "amount_usd": -56.67,
    "tx_key": "sebas_bank|photo-1367.jpg|S|04/02/2026||VISA Buckaroo *www annef AMSTERDAM NL ON 04-01 2561|-56.67",
    "id": "photo-1367.jpg:89",
    "type": "expense",
    "is_fee": false,
    "category_guess": "other",
    "country_guess": "NL",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Pago procesado por Buckaroo; corresponde a entradas de Anne Frank.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1367.jpg",
    "paid_by": "S",
    "date": "03/31/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -2.43,
    "tx_key": "sebas_bank|photo-1367.jpg|S|03/31/2026||FEE FOR INTERNATIONAL TRANSACTION|-2.43",
    "id": "photo-1367.jpg:90",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1367.jpg",
    "paid_by": "S",
    "date": "03/31/2026",
    "status": "",
    "merchant": "VISA CHAT.VERSAILLES 431213478VERSAILLES FR ON 03-29 2561",
    "amount_usd": -80.84,
    "tx_key": "sebas_bank|photo-1367.jpg|S|03/31/2026||VISA CHAT.VERSAILLES 431213478VERSAILLES FR ON 03-29 2561|-80.84",
    "id": "photo-1367.jpg:91",
    "type": "expense",
    "is_fee": false,
    "category_guess": "attraction",
    "country_guess": "FR",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Entrada o reserva vinculada a Versalles.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1368.jpg",
    "paid_by": "S",
    "date": "04/13/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -2.81,
    "tx_key": "sebas_bank|photo-1368.jpg|S|04/13/2026||FEE FOR INTERNATIONAL TRANSACTION|-2.81",
    "id": "photo-1368.jpg:92",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1368.jpg",
    "paid_by": "S",
    "date": "04/13/2026",
    "status": "",
    "merchant": "VISA biglietteriamusei.vatic Citta del Vat VA ON 04-10 2561",
    "amount_usd": -93.79,
    "tx_key": "sebas_bank|photo-1368.jpg|S|04/13/2026||VISA biglietteriamusei.vatic Citta del Vat VA ON 04-10 2561|-93.79",
    "id": "photo-1368.jpg:93",
    "type": "expense",
    "is_fee": false,
    "category_guess": "attraction",
    "country_guess": "VA",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Entrada a Museos Vaticanos.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1368.jpg",
    "paid_by": "S",
    "date": "04/13/2026",
    "status": "",
    "merchant": "PAYMENTS 'Deel, IPUZUF4LS",
    "amount_usd": 795.0,
    "tx_key": "sebas_bank|photo-1368.jpg|S|04/13/2026||PAYMENTS 'Deel, IPUZUF4LS|795.00",
    "id": "photo-1368.jpg:94",
    "type": "income",
    "is_fee": false,
    "category_guess": "transfer",
    "country_guess": "",
    "trip_scope": "non_trip",
    "allocation": "",
    "description": "Transferencia o pago recibido vía Deel.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1368.jpg",
    "paid_by": "S",
    "date": "04/08/2026",
    "status": "",
    "merchant": "VISA Omio 917-9243330 FL ON 04-07 2561",
    "amount_usd": 69.13,
    "tx_key": "sebas_bank|photo-1368.jpg|S|04/08/2026||VISA Omio 917-9243330 FL ON 04-07 2561|69.13",
    "id": "photo-1368.jpg:95",
    "type": "income",
    "is_fee": false,
    "category_guess": "transport",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Ingreso, reintegro o transferencia a favor.",
    "description_confidence": "alta",
    "description_source": "heuristic"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1368.jpg",
    "paid_by": "S",
    "date": "04/07/2026",
    "status": "",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -6.58,
    "tx_key": "sebas_bank|photo-1368.jpg|S|04/07/2026||FEE FOR INTERNATIONAL TRANSACTION|-6.58",
    "id": "photo-1368.jpg:96",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1368.jpg",
    "paid_by": "S",
    "date": "04/07/2026",
    "status": "",
    "merchant": "VISA Omio Berlin DE ON 04-06 2561",
    "amount_usd": -219.47,
    "tx_key": "sebas_bank|photo-1368.jpg|S|04/07/2026||VISA Omio Berlin DE ON 04-06 2561|-219.47",
    "id": "photo-1368.jpg:97",
    "type": "expense",
    "is_fee": false,
    "category_guess": "transport",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Pasaje o reserva de transporte vía Omio.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1368.jpg",
    "paid_by": "S",
    "date": "04/03/2026",
    "status": "",
    "merchant": "VISA Amazon web services aws.amazon.co WA ON 04-02 2561",
    "amount_usd": -0.27,
    "tx_key": "sebas_bank|photo-1368.jpg|S|04/03/2026||VISA Amazon web services aws.amazon.co WA ON 04-02 2561|-0.27",
    "id": "photo-1368.jpg:98",
    "type": "expense",
    "is_fee": false,
    "category_guess": "subscription",
    "country_guess": "US/CA",
    "trip_scope": "non_trip",
    "allocation": "",
    "description": "Cargo de AWS / infraestructura cloud.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1369.jpg",
    "paid_by": "S",
    "date": "05/04/2026",
    "status": "posted",
    "merchant": "VISA Amazon web services aws.amazon.co WA ON 05-02 2561",
    "amount_usd": -0.26,
    "tx_key": "sebas_bank|photo-1369.jpg|S|05/04/2026|posted|VISA Amazon web services aws.amazon.co WA ON 05-02 2561|-0.26",
    "id": "photo-1369.jpg:99",
    "type": "expense",
    "is_fee": false,
    "category_guess": "subscription",
    "country_guess": "US/CA",
    "trip_scope": "non_trip",
    "allocation": "",
    "description": "Cargo de AWS / infraestructura cloud.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1369.jpg",
    "paid_by": "S",
    "date": "04/29/2026",
    "status": "posted",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -1.41,
    "tx_key": "sebas_bank|photo-1369.jpg|S|04/29/2026|posted|FEE FOR INTERNATIONAL TRANSACTION|-1.41",
    "id": "photo-1369.jpg:100",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1369.jpg",
    "paid_by": "S",
    "date": "04/29/2026",
    "status": "posted",
    "merchant": "VISA WWW.DUOMO.FIRENZE.IT WWW.DUOMO.FIR IT ON 04-28 2561",
    "amount_usd": -47.02,
    "tx_key": "sebas_bank|photo-1369.jpg|S|04/29/2026|posted|VISA WWW.DUOMO.FIRENZE.IT WWW.DUOMO.FIR IT ON 04-28 2561|-47.02",
    "id": "photo-1369.jpg:101",
    "type": "expense",
    "is_fee": false,
    "category_guess": "attraction",
    "country_guess": "IT",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Entrada al Duomo de Florencia.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1369.jpg",
    "paid_by": "S",
    "date": "04/20/2026",
    "status": "posted",
    "merchant": "VISA OPENAI *CHATGPT SUBSCR OPENAI.COM CA ON 04-19 2561",
    "amount_usd": -20.0,
    "tx_key": "sebas_bank|photo-1369.jpg|S|04/20/2026|posted|VISA OPENAI *CHATGPT SUBSCR OPENAI.COM CA ON 04-19 2561|-20.00",
    "id": "photo-1369.jpg:102",
    "type": "expense",
    "is_fee": false,
    "category_guess": "subscription",
    "country_guess": "US/CA",
    "trip_scope": "non_trip",
    "allocation": "",
    "description": "Suscripción de OpenAI / ChatGPT.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1369.jpg",
    "paid_by": "S",
    "date": "04/20/2026",
    "status": "posted",
    "merchant": "FEE FOR INTERNATIONAL TRANSACTION",
    "amount_usd": -0.56,
    "tx_key": "sebas_bank|photo-1369.jpg|S|04/20/2026|posted|FEE FOR INTERNATIONAL TRANSACTION|-0.56",
    "id": "photo-1369.jpg:103",
    "type": "expense",
    "is_fee": true,
    "category_guess": "fee",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comisión bancaria por compra internacional.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1369.jpg",
    "paid_by": "S",
    "date": "04/20/2026",
    "status": "posted",
    "merchant": "VISA MUSEO DEL PRADO PRADO PASEO ES ON 04-19 2561",
    "amount_usd": -18.7,
    "tx_key": "sebas_bank|photo-1369.jpg|S|04/20/2026|posted|VISA MUSEO DEL PRADO PRADO PASEO ES ON 04-19 2561|-18.70",
    "id": "photo-1369.jpg:104",
    "type": "expense",
    "is_fee": false,
    "category_guess": "attraction",
    "country_guess": "ES",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Entrada al Museo del Prado.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1389.jpg",
    "paid_by": "S",
    "date": "",
    "status": "",
    "merchant": "AIRBNB * HMTZRHKTH9",
    "amount_usd": -268.02,
    "tx_key": "sebas_bank|photo-1389.jpg|S|||AIRBNB * HMTZRHKTH9|-268.02",
    "id": "photo-1389.jpg:105",
    "type": "expense",
    "is_fee": false,
    "category_guess": "lodging",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Alojamiento de Airbnb del viaje Europa.",
    "description_confidence": "alta",
    "description_source": "user_confirmed"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1389.jpg",
    "paid_by": "S",
    "date": "",
    "status": "",
    "merchant": "AIRBNB * HMDK88JPJ4",
    "amount_usd": -108.53,
    "tx_key": "sebas_bank|photo-1389.jpg|S|||AIRBNB * HMDK88JPJ4|-108.53",
    "id": "photo-1389.jpg:106",
    "type": "expense",
    "is_fee": false,
    "category_guess": "lodging",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Alojamiento de Airbnb del viaje Europa.",
    "description_confidence": "alta",
    "description_source": "user_confirmed"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1389.jpg",
    "paid_by": "S",
    "date": "",
    "status": "",
    "merchant": "AIRBNB * HMYWMYDAP2",
    "amount_usd": -359.8,
    "tx_key": "sebas_bank|photo-1389.jpg|S|||AIRBNB * HMYWMYDAP2|-359.80",
    "id": "photo-1389.jpg:107",
    "type": "expense",
    "is_fee": false,
    "category_guess": "lodging",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Alojamiento de Airbnb del viaje Europa.",
    "description_confidence": "alta",
    "description_source": "user_confirmed"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1389.jpg",
    "paid_by": "S",
    "date": "",
    "status": "",
    "merchant": "Deel Balance",
    "amount_usd": 525.0,
    "tx_key": "sebas_bank|photo-1389.jpg|S|||Deel Balance|525.00",
    "id": "photo-1389.jpg:108",
    "type": "income",
    "is_fee": false,
    "category_guess": "transfer",
    "country_guess": "",
    "trip_scope": "non_trip",
    "allocation": "",
    "description": "Recarga o movimiento interno de saldo Deel.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1389.jpg",
    "paid_by": "S",
    "date": "",
    "status": "",
    "merchant": "AIRBNB * HMYWMYDAP2",
    "amount_usd": 0.0,
    "tx_key": "sebas_bank|photo-1389.jpg|S|||AIRBNB * HMYWMYDAP2|0.00",
    "id": "photo-1389.jpg:109",
    "type": "zero",
    "is_fee": false,
    "category_guess": "lodging",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Alojamiento de Airbnb del viaje Europa.",
    "description_confidence": "alta",
    "description_source": "user_confirmed"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1390.jpg",
    "paid_by": "S",
    "date": "",
    "status": "",
    "merchant": "AIRBNB * HM8E3XH3WJ",
    "amount_usd": -437.46,
    "tx_key": "sebas_bank|photo-1390.jpg|S|||AIRBNB * HM8E3XH3WJ|-437.46",
    "id": "photo-1390.jpg:110",
    "type": "expense",
    "is_fee": false,
    "category_guess": "lodging",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Alojamiento de Airbnb del viaje Europa.",
    "description_confidence": "alta",
    "description_source": "user_confirmed"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1390.jpg",
    "paid_by": "S",
    "date": "",
    "status": "",
    "merchant": "Deel Balance",
    "amount_usd": 600.0,
    "tx_key": "sebas_bank|photo-1390.jpg|S|||Deel Balance|600.00",
    "id": "photo-1390.jpg:111",
    "type": "income",
    "is_fee": false,
    "category_guess": "transfer",
    "country_guess": "",
    "trip_scope": "non_trip",
    "allocation": "",
    "description": "Recarga o movimiento interno de saldo Deel.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1390.jpg",
    "paid_by": "S",
    "date": "",
    "status": "",
    "merchant": "AIRBNB * HMDK88JPJ4",
    "amount_usd": -141.63,
    "tx_key": "sebas_bank|photo-1390.jpg|S|||AIRBNB * HMDK88JPJ4|-141.63",
    "id": "photo-1390.jpg:112",
    "type": "expense",
    "is_fee": false,
    "category_guess": "lodging",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Alojamiento de Airbnb del viaje Europa.",
    "description_confidence": "alta",
    "description_source": "user_confirmed"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1390.jpg",
    "paid_by": "S",
    "date": "",
    "status": "",
    "merchant": "AIRBNB * HMWCBYZYKC",
    "amount_usd": -189.01,
    "tx_key": "sebas_bank|photo-1390.jpg|S|||AIRBNB * HMWCBYZYKC|-189.01",
    "id": "photo-1390.jpg:113",
    "type": "expense",
    "is_fee": false,
    "category_guess": "lodging",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Alojamiento de Airbnb del viaje Europa.",
    "description_confidence": "alta",
    "description_source": "user_confirmed"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1390.jpg",
    "paid_by": "S",
    "date": "",
    "status": "",
    "merchant": "AIRBNB *",
    "amount_usd": 0.0,
    "tx_key": "sebas_bank|photo-1390.jpg|S|||AIRBNB *|0.00",
    "id": "photo-1390.jpg:114",
    "type": "zero",
    "is_fee": false,
    "category_guess": "lodging",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Alojamiento de Airbnb del viaje Europa.",
    "description_confidence": "alta",
    "description_source": "user_confirmed"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1390.jpg",
    "paid_by": "S",
    "date": "",
    "status": "",
    "merchant": "AIRBNB * HM3ZZB4KTC",
    "amount_usd": -85.58,
    "tx_key": "sebas_bank|photo-1390.jpg|S|||AIRBNB * HM3ZZB4KTC|-85.58",
    "id": "photo-1390.jpg:115",
    "type": "expense",
    "is_fee": false,
    "category_guess": "lodging",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Alojamiento de Airbnb del viaje Europa.",
    "description_confidence": "alta",
    "description_source": "user_confirmed"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1390.jpg",
    "paid_by": "S",
    "date": "",
    "status": "",
    "merchant": "AIRBNB * HMWCBYZYKC",
    "amount_usd": -189.01,
    "tx_key": "sebas_bank|photo-1390.jpg|S|||AIRBNB * HMWCBYZYKC|-189.01",
    "id": "photo-1390.jpg:116",
    "type": "expense",
    "is_fee": false,
    "category_guess": "lodging",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Alojamiento de Airbnb del viaje Europa.",
    "description_confidence": "alta",
    "description_source": "user_confirmed"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1391.jpg",
    "paid_by": "S",
    "date": "",
    "status": "",
    "merchant": "AIRBNB * HMYWMYDAP2",
    "amount_usd": -7.75,
    "tx_key": "sebas_bank|photo-1391.jpg|S|||AIRBNB * HMYWMYDAP2|-7.75",
    "id": "photo-1391.jpg:117",
    "type": "expense",
    "is_fee": false,
    "category_guess": "lodging",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Alojamiento de Airbnb del viaje Europa.",
    "description_confidence": "alta",
    "description_source": "user_confirmed"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1391.jpg",
    "paid_by": "S",
    "date": "",
    "status": "",
    "merchant": "AIRBNB *",
    "amount_usd": 0.0,
    "tx_key": "sebas_bank|photo-1391.jpg|S|||AIRBNB *|0.00",
    "id": "photo-1391.jpg:118",
    "type": "zero",
    "is_fee": false,
    "category_guess": "lodging",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Alojamiento de Airbnb del viaje Europa.",
    "description_confidence": "alta",
    "description_source": "user_confirmed"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1391.jpg",
    "paid_by": "S",
    "date": "",
    "status": "",
    "merchant": "AIRBNB *",
    "amount_usd": 0.0,
    "tx_key": "sebas_bank|photo-1391.jpg|S|||AIRBNB *|0.00",
    "id": "photo-1391.jpg:119",
    "type": "zero",
    "is_fee": false,
    "category_guess": "lodging",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Alojamiento de Airbnb del viaje Europa.",
    "description_confidence": "alta",
    "description_source": "user_confirmed"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1391.jpg",
    "paid_by": "S",
    "date": "",
    "status": "",
    "merchant": "AIRBNB * HMYWMYDAP2",
    "amount_usd": -387.47,
    "tx_key": "sebas_bank|photo-1391.jpg|S|||AIRBNB * HMYWMYDAP2|-387.47",
    "id": "photo-1391.jpg:120",
    "type": "expense",
    "is_fee": false,
    "category_guess": "lodging",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Alojamiento de Airbnb del viaje Europa.",
    "description_confidence": "alta",
    "description_source": "user_confirmed"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1391.jpg",
    "paid_by": "S",
    "date": "",
    "status": "",
    "merchant": "Deel Balance",
    "amount_usd": 620.0,
    "tx_key": "sebas_bank|photo-1391.jpg|S|||Deel Balance|620.00",
    "id": "photo-1391.jpg:121",
    "type": "income",
    "is_fee": false,
    "category_guess": "transfer",
    "country_guess": "",
    "trip_scope": "non_trip",
    "allocation": "",
    "description": "Recarga o movimiento interno de saldo Deel.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1391.jpg",
    "paid_by": "S",
    "date": "",
    "status": "",
    "merchant": "AIRBNB * HM3ZZB4KTC",
    "amount_usd": -413.58,
    "tx_key": "sebas_bank|photo-1391.jpg|S|||AIRBNB * HM3ZZB4KTC|-413.58",
    "id": "photo-1391.jpg:122",
    "type": "expense",
    "is_fee": false,
    "category_guess": "lodging",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Alojamiento de Airbnb del viaje Europa.",
    "description_confidence": "alta",
    "description_source": "user_confirmed"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1391.jpg",
    "paid_by": "S",
    "date": "",
    "status": "",
    "merchant": "Deel Balance",
    "amount_usd": 500.0,
    "tx_key": "sebas_bank|photo-1391.jpg|S|||Deel Balance|500.00",
    "id": "photo-1391.jpg:123",
    "type": "income",
    "is_fee": false,
    "category_guess": "transfer",
    "country_guess": "",
    "trip_scope": "non_trip",
    "allocation": "",
    "description": "Recarga o movimiento interno de saldo Deel.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1391.jpg",
    "paid_by": "S",
    "date": "02/09/2026",
    "status": "",
    "merchant": "VISA Omio 917-9243330 FL ON 02-08 2561",
    "amount_usd": -191.6,
    "tx_key": "sebas_bank|photo-1391.jpg|S|02/09/2026||VISA Omio 917-9243330 FL ON 02-08 2561|-191.60",
    "id": "photo-1391.jpg:124",
    "type": "expense",
    "is_fee": false,
    "category_guess": "transport",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Gasto de transporte o traslado.",
    "description_confidence": "media",
    "description_source": "heuristic"
  },
  {
    "source": "sebas_bank",
    "source_ref": "photo-1391.jpg",
    "paid_by": "S",
    "date": "02/17/2026",
    "status": "",
    "merchant": "VISA CLAUDE.AI SUBSCRIPTION ANTHROPIC.COM CA ON 02-15 2561",
    "amount_usd": -20.0,
    "tx_key": "sebas_bank|photo-1391.jpg|S|02/17/2026||VISA CLAUDE.AI SUBSCRIPTION ANTHROPIC.COM CA ON 02-15 2561|-20.00",
    "id": "photo-1391.jpg:125",
    "type": "expense",
    "is_fee": false,
    "category_guess": "subscription",
    "country_guess": "US/CA",
    "trip_scope": "non_trip",
    "allocation": "",
    "description": "Suscripción de Claude / Anthropic.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "13/05/2026",
    "status": "manual",
    "merchant": "De Kroon van Singel",
    "amount_usd": -11.9,
    "tx_key": "vicky_manual|vicky-manual|V|13/05/2026|manual|De Kroon van Singel|-11.90",
    "id": "vicky-manual:126",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "NL",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Bar o restaurante De Kroon van Singel, Ámsterdam.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "13/05/2026",
    "status": "manual",
    "merchant": "Zettle *Sam tabak & souve",
    "amount_usd": -7.14,
    "tx_key": "vicky_manual|vicky-manual|V|13/05/2026|manual|Zettle *Sam tabak & souve|-7.14",
    "id": "vicky-manual:127",
    "type": "expense",
    "is_fee": false,
    "category_guess": "shopping",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Tienda de tabaco y souvenirs en Ámsterdam.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "13/05/2026",
    "status": "manual",
    "merchant": "LA PAMPA V.O.F.",
    "amount_usd": -47.63,
    "tx_key": "vicky_manual|vicky-manual|V|13/05/2026|manual|LA PAMPA V.O.F.|-47.63",
    "id": "vicky-manual:128",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Restaurante parrilla.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "12/05/2026",
    "status": "manual",
    "merchant": "INTRUSO",
    "amount_usd": -14.29,
    "tx_key": "vicky_manual|vicky-manual|V|12/05/2026|manual|INTRUSO|-14.29",
    "id": "vicky-manual:129",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Bar, café o restaurante Intruso en Madrid.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "12/05/2026",
    "status": "manual",
    "merchant": "C&M*SINGEL 506",
    "amount_usd": -1.79,
    "tx_key": "vicky_manual|vicky-manual|V|12/05/2026|manual|C&M*SINGEL 506|-1.79",
    "id": "vicky-manual:130",
    "type": "expense",
    "is_fee": false,
    "category_guess": "other",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comercio pequeño sobre Singel 506, Ámsterdam; rubro exacto no confirmado.",
    "description_confidence": "baja",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "12/05/2026",
    "status": "manual",
    "merchant": "CROISSANTERIE OUTMAYER",
    "amount_usd": -22.33,
    "tx_key": "vicky_manual|vicky-manual|V|12/05/2026|manual|CROISSANTERIE OUTMAYER|-22.33",
    "id": "vicky-manual:131",
    "type": "expense",
    "is_fee": false,
    "category_guess": "groceries",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Panadería o cafetería Croissanterie Outmayer.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "12/05/2026",
    "status": "manual",
    "merchant": "PAPIZZA",
    "amount_usd": -14.06,
    "tx_key": "vicky_manual|vicky-manual|V|12/05/2026|manual|PAPIZZA|-14.06",
    "id": "vicky-manual:132",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "NL",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Local de pizza rápida.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "12/05/2026",
    "status": "manual",
    "merchant": "TA-WHA CHIN ARTS & CRA",
    "amount_usd": -8.93,
    "tx_key": "vicky_manual|vicky-manual|V|12/05/2026|manual|TA-WHA CHIN ARTS & CRA|-8.93",
    "id": "vicky-manual:133",
    "type": "expense",
    "is_fee": false,
    "category_guess": "shopping",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Tienda de artesanías, regalos o souvenirs.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "12/05/2026",
    "status": "manual",
    "merchant": "Hotel Beursstraat",
    "amount_usd": -484.92,
    "tx_key": "vicky_manual|vicky-manual|V|12/05/2026|manual|Hotel Beursstraat|-484.92",
    "id": "vicky-manual:134",
    "type": "expense",
    "is_fee": false,
    "category_guess": "lodging",
    "country_guess": "NL",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Alojamiento / hotel en Ámsterdam.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "12/05/2026",
    "status": "manual",
    "merchant": "KamYin BV",
    "amount_usd": -45.56,
    "tx_key": "vicky_manual|vicky-manual|V|12/05/2026|manual|KamYin BV|-45.56",
    "id": "vicky-manual:135",
    "type": "expense",
    "is_fee": false,
    "category_guess": "groceries",
    "country_guess": "NL",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Supermercado o tienda de alimentos asiáticos Kam Yin.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "11/05/2026",
    "status": "manual",
    "merchant": "ZARA MADRID PRECIADOS 18",
    "amount_usd": -58.28,
    "tx_key": "vicky_manual|vicky-manual|V|11/05/2026|manual|ZARA MADRID PRECIADOS 18|-58.28",
    "id": "vicky-manual:136",
    "type": "expense",
    "is_fee": false,
    "category_guess": "shopping",
    "country_guess": "ES",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Tienda de ropa Zara.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "11/05/2026",
    "status": "manual",
    "merchant": "BUTRAGUENO ESTEBAN",
    "amount_usd": -64.25,
    "tx_key": "vicky_manual|vicky-manual|V|11/05/2026|manual|BUTRAGUENO ESTEBAN|-64.25",
    "id": "vicky-manual:137",
    "type": "expense",
    "is_fee": false,
    "category_guess": "shopping",
    "country_guess": "ES",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Tienda o comercio local de retail en Madrid.",
    "description_confidence": "media",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "11/05/2026",
    "status": "manual",
    "merchant": "VIVAZ ROSALEDA",
    "amount_usd": -35.37,
    "tx_key": "vicky_manual|vicky-manual|V|11/05/2026|manual|VIVAZ ROSALEDA|-35.37",
    "id": "vicky-manual:138",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "ES",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Bar o restaurante Vivaz en Madrid.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "11/05/2026",
    "status": "manual",
    "merchant": "VIANDAS DE SALAMANCA",
    "amount_usd": -26.73,
    "tx_key": "vicky_manual|vicky-manual|V|11/05/2026|manual|VIANDAS DE SALAMANCA|-26.73",
    "id": "vicky-manual:139",
    "type": "expense",
    "is_fee": false,
    "category_guess": "groceries",
    "country_guess": "ES",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Tienda gourmet / fiambres / alimentos.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "11/05/2026",
    "status": "manual",
    "merchant": "DEKORAZONCARMEN",
    "amount_usd": -17.85,
    "tx_key": "vicky_manual|vicky-manual|V|11/05/2026|manual|DEKORAZONCARMEN|-17.85",
    "id": "vicky-manual:140",
    "type": "expense",
    "is_fee": false,
    "category_guess": "shopping",
    "country_guess": "ES",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Tienda de decoración o regalos en Madrid.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "11/05/2026",
    "status": "manual",
    "merchant": "MUSEO DEL PRADO",
    "amount_usd": -11.91,
    "tx_key": "vicky_manual|vicky-manual|V|11/05/2026|manual|MUSEO DEL PRADO|-11.91",
    "id": "vicky-manual:141",
    "type": "expense",
    "is_fee": false,
    "category_guess": "attraction",
    "country_guess": "ES",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Entrada al Museo del Prado.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "10/05/2026",
    "status": "manual",
    "merchant": "CH LUMIERE",
    "amount_usd": -184.86,
    "tx_key": "vicky_manual|vicky-manual|V|10/05/2026|manual|CH LUMIERE|-184.86",
    "id": "vicky-manual:142",
    "type": "expense",
    "is_fee": false,
    "category_guess": "lodging",
    "country_guess": "FR",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Alojamiento / guesthouse en Madrid al inicio del viaje.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "10/05/2026",
    "status": "manual",
    "merchant": "TABERNA LA DANIELA",
    "amount_usd": -62.16,
    "tx_key": "vicky_manual|vicky-manual|V|10/05/2026|manual|TABERNA LA DANIELA|-62.16",
    "id": "vicky-manual:143",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Taberna o restaurante madrileño.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "14/05/2026",
    "status": "manual",
    "merchant": "Molenmuseum De Zaansche M",
    "amount_usd": -5.93,
    "tx_key": "vicky_manual|vicky-manual|V|14/05/2026|manual|Molenmuseum De Zaansche M|-5.93",
    "id": "vicky-manual:144",
    "type": "expense",
    "is_fee": false,
    "category_guess": "attraction",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Entrada o visita al museo de Zaansche Molen.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "14/05/2026",
    "status": "manual",
    "merchant": "CCV*OLD BRIDGE 3",
    "amount_usd": -4.75,
    "tx_key": "vicky_manual|vicky-manual|V|14/05/2026|manual|CCV*OLD BRIDGE 3|-4.75",
    "id": "vicky-manual:145",
    "type": "expense",
    "is_fee": false,
    "category_guess": "shopping",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Souvenir shop o retail local Old Bridge en Países Bajos.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "15/05/2026",
    "status": "manual",
    "merchant": "AAA Premium Retail",
    "amount_usd": -58.58,
    "tx_key": "vicky_manual|vicky-manual|V|15/05/2026|manual|AAA Premium Retail|-58.58",
    "id": "vicky-manual:146",
    "type": "expense",
    "is_fee": false,
    "category_guess": "shopping",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Compra de ropa, accesorios o retail.",
    "description_confidence": "media",
    "description_source": "heuristic"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "15/05/2026",
    "status": "manual",
    "merchant": "PANCAKE & CO",
    "amount_usd": -12.43,
    "tx_key": "vicky_manual|vicky-manual|V|15/05/2026|manual|PANCAKE & CO|-12.43",
    "id": "vicky-manual:147",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comida, bar o cafetería.",
    "description_confidence": "media",
    "description_source": "heuristic"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "15/05/2026",
    "status": "manual",
    "merchant": "QUOTIDAY",
    "amount_usd": -16.89,
    "tx_key": "vicky_manual|vicky-manual|V|15/05/2026|manual|QUOTIDAY|-16.89",
    "id": "vicky-manual:148",
    "type": "expense",
    "is_fee": false,
    "category_guess": "shopping",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Compra de ropa, accesorios o retail.",
    "description_confidence": "media",
    "description_source": "heuristic"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "15/05/2026",
    "status": "manual",
    "merchant": "MISS MANON SNC",
    "amount_usd": -8.65,
    "tx_key": "vicky_manual|vicky-manual|V|15/05/2026|manual|MISS MANON SNC|-8.65",
    "id": "vicky-manual:149",
    "type": "expense",
    "is_fee": false,
    "category_guess": "shopping",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Compra de ropa, accesorios o retail.",
    "description_confidence": "media",
    "description_source": "heuristic"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "17/05/2026",
    "status": "manual",
    "merchant": "PHARMACIE DES HA2186695",
    "amount_usd": -59.31,
    "tx_key": "vicky_manual|vicky-manual|V|17/05/2026|manual|PHARMACIE DES HA2186695|-59.31",
    "id": "vicky-manual:150",
    "type": "expense",
    "is_fee": false,
    "category_guess": "shopping",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Farmacia o perfumería en Francia.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "17/05/2026",
    "status": "manual",
    "merchant": "CARREFOUR CITY 2508469",
    "amount_usd": -35.66,
    "tx_key": "vicky_manual|vicky-manual|V|17/05/2026|manual|CARREFOUR CITY 2508469|-35.66",
    "id": "vicky-manual:151",
    "type": "expense",
    "is_fee": false,
    "category_guess": "groceries",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Supermercado Carrefour City.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "17/05/2026",
    "status": "manual",
    "merchant": "FRANPRIX 6866",
    "amount_usd": -14.55,
    "tx_key": "vicky_manual|vicky-manual|V|17/05/2026|manual|FRANPRIX 6866|-14.55",
    "id": "vicky-manual:152",
    "type": "expense",
    "is_fee": false,
    "category_guess": "groceries",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Supermercado Franprix.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "18/05/2026",
    "status": "manual",
    "merchant": "AXA B2C DA 000000006712616",
    "amount_usd": -9.32,
    "tx_key": "vicky_manual|vicky-manual|V|18/05/2026|manual|AXA B2C DA 000000006712616|-9.32",
    "id": "vicky-manual:153",
    "type": "expense",
    "is_fee": false,
    "category_guess": "other",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Compra de seguro o servicio AXA.",
    "description_confidence": "media",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "18/05/2026",
    "status": "manual",
    "merchant": "Lindt Spruengli France F",
    "amount_usd": -42.17,
    "tx_key": "vicky_manual|vicky-manual|V|18/05/2026|manual|Lindt Spruengli France F|-42.17",
    "id": "vicky-manual:154",
    "type": "expense",
    "is_fee": false,
    "category_guess": "shopping",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Chocolatería o tienda Lindt.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "19/05/2026",
    "status": "manual",
    "merchant": "DT Aerobus Paris-Beauvais",
    "amount_usd": -65.82,
    "tx_key": "vicky_manual|vicky-manual|V|19/05/2026|manual|DT Aerobus Paris-Beauvais|-65.82",
    "id": "vicky-manual:155",
    "type": "expense",
    "is_fee": false,
    "category_guess": "transport",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Traslado en bus al/del aeropuerto.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "19/05/2026",
    "status": "manual",
    "merchant": "BOUILLON PIGALLE",
    "amount_usd": -71.28,
    "tx_key": "vicky_manual|vicky-manual|V|19/05/2026|manual|BOUILLON PIGALLE|-71.28",
    "id": "vicky-manual:156",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Restaurante Bouillon Pigalle en París.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "20/05/2026",
    "status": "manual",
    "merchant": "TONNARELLO",
    "amount_usd": -71.28,
    "tx_key": "vicky_manual|vicky-manual|V|20/05/2026|manual|TONNARELLO|-71.28",
    "id": "vicky-manual:157",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Restaurante Tonnarello en Roma.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "20/05/2026",
    "status": "manual",
    "merchant": "FRIGIDARIUM",
    "amount_usd": -7.07,
    "tx_key": "vicky_manual|vicky-manual|V|20/05/2026|manual|FRIGIDARIUM|-7.07",
    "id": "vicky-manual:158",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Heladería o postres en Roma.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "20/05/2026",
    "status": "manual",
    "merchant": "SEDE DI VIA DEME",
    "amount_usd": -47.13,
    "tx_key": "vicky_manual|vicky-manual|V|20/05/2026|manual|SEDE DI VIA DEME|-47.13",
    "id": "vicky-manual:159",
    "type": "expense",
    "is_fee": false,
    "category_guess": "other",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comercio local; rubro exacto no confirmado.",
    "description_confidence": "baja",
    "description_source": "heuristic"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "21/05/2026",
    "status": "manual",
    "merchant": "SUMUP *FILIPPO CALABRIA",
    "amount_usd": -35.29,
    "tx_key": "vicky_manual|vicky-manual|V|21/05/2026|manual|SUMUP *FILIPPO CALABRIA|-35.29",
    "id": "vicky-manual:160",
    "type": "expense",
    "is_fee": false,
    "category_guess": "other",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Local gastronómico o comercio de alimentos en Italia.",
    "description_confidence": "media",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "21/05/2026",
    "status": "manual",
    "merchant": "I Pizzicaroli piazza Navo",
    "amount_usd": -23.52,
    "tx_key": "vicky_manual|vicky-manual|V|21/05/2026|manual|I Pizzicaroli piazza Navo|-23.52",
    "id": "vicky-manual:161",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Restaurante o comida rápida italiana I Pizzicaroli.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "21/05/2026",
    "status": "manual",
    "merchant": "BISTROT CORONARI",
    "amount_usd": -9.41,
    "tx_key": "vicky_manual|vicky-manual|V|21/05/2026|manual|BISTROT CORONARI|-9.41",
    "id": "vicky-manual:162",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Bistró o restaurante en Roma.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "22/05/2026",
    "status": "manual",
    "merchant": "PIZZERIA ALLE CARRETTE",
    "amount_usd": -28.21,
    "tx_key": "vicky_manual|vicky-manual|V|22/05/2026|manual|PIZZERIA ALLE CARRETTE|-28.21",
    "id": "vicky-manual:163",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Pizzería en Roma.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "22/05/2026",
    "status": "manual",
    "merchant": "IL CHIOSCO",
    "amount_usd": -12.93,
    "tx_key": "vicky_manual|vicky-manual|V|22/05/2026|manual|IL CHIOSCO|-12.93",
    "id": "vicky-manual:164",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Kiosco o local de comida.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "23/05/2026",
    "status": "manual",
    "merchant": "EIS SRL",
    "amount_usd": -11.75,
    "tx_key": "vicky_manual|vicky-manual|V|23/05/2026|manual|EIS SRL|-11.75",
    "id": "vicky-manual:165",
    "type": "expense",
    "is_fee": false,
    "category_guess": "other",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Heladería o local de postres / gelato.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "23/05/2026",
    "status": "manual",
    "merchant": "TRAPIZZINO",
    "amount_usd": -14.09,
    "tx_key": "vicky_manual|vicky-manual|V|23/05/2026|manual|TRAPIZZINO|-14.09",
    "id": "vicky-manual:166",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Local de comida italiana Trapizzino.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "23/05/2026",
    "status": "manual",
    "merchant": "ALL'ANTICO VINAIO",
    "amount_usd": -24.66,
    "tx_key": "vicky_manual|vicky-manual|V|23/05/2026|manual|ALL'ANTICO VINAIO|-24.66",
    "id": "vicky-manual:167",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Sandwichería / local gastronómico All’Antico Vinaio.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "23/05/2026",
    "status": "manual",
    "merchant": "NEU*DITECH SRL",
    "amount_usd": -1.76,
    "tx_key": "vicky_manual|vicky-manual|V|23/05/2026|manual|NEU*DITECH SRL|-1.76",
    "id": "vicky-manual:168",
    "type": "expense",
    "is_fee": false,
    "category_guess": "shopping",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Tienda de electrónica o accesorios.",
    "description_confidence": "media",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "23/05/2026",
    "status": "manual",
    "merchant": "ROMACENTRO SRLS",
    "amount_usd": -93.95,
    "tx_key": "vicky_manual|vicky-manual|V|23/05/2026|manual|ROMACENTRO SRLS|-93.95",
    "id": "vicky-manual:169",
    "type": "expense",
    "is_fee": false,
    "category_guess": "shopping",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comercio o servicio turístico en Roma centro.",
    "description_confidence": "media",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "23/05/2026",
    "status": "manual",
    "merchant": "DMS PANTHEON SELF",
    "amount_usd": -11.75,
    "tx_key": "vicky_manual|vicky-manual|V|23/05/2026|manual|DMS PANTHEON SELF|-11.75",
    "id": "vicky-manual:170",
    "type": "expense",
    "is_fee": false,
    "category_guess": "other",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comercio de autoservicio cerca del Panteón.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "23/05/2026",
    "status": "manual",
    "merchant": "CREMONINI SPA",
    "amount_usd": -17.61,
    "tx_key": "vicky_manual|vicky-manual|V|23/05/2026|manual|CREMONINI SPA|-17.61",
    "id": "vicky-manual:171",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comida o servicio gastronómico Cremonini.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "24/05/2026",
    "status": "manual",
    "merchant": "I GUELFI TUSCANY FOOD",
    "amount_usd": -19.97,
    "tx_key": "vicky_manual|vicky-manual|V|24/05/2026|manual|I GUELFI TUSCANY FOOD|-19.97",
    "id": "vicky-manual:172",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Tienda gastronómica / alimentos de Toscana.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "24/05/2026",
    "status": "manual",
    "merchant": "ROSSOPOMODORO STAZ TER",
    "amount_usd": -6.93,
    "tx_key": "vicky_manual|vicky-manual|V|24/05/2026|manual|ROSSOPOMODORO STAZ TER|-6.93",
    "id": "vicky-manual:173",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Restaurante/pizzería Rossopomodoro.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "24/05/2026",
    "status": "manual",
    "merchant": "A&F MARKET S.R.L.",
    "amount_usd": -42.37,
    "tx_key": "vicky_manual|vicky-manual|V|24/05/2026|manual|A&F MARKET S.R.L.|-42.37",
    "id": "vicky-manual:174",
    "type": "expense",
    "is_fee": false,
    "category_guess": "shopping",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Compra de ropa, accesorios o retail.",
    "description_confidence": "media",
    "description_source": "heuristic"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "24/05/2026",
    "status": "manual",
    "merchant": "FIRENZE POR SANTA MARI",
    "amount_usd": -5.82,
    "tx_key": "vicky_manual|vicky-manual|V|24/05/2026|manual|FIRENZE POR SANTA MARI|-5.82",
    "id": "vicky-manual:175",
    "type": "expense",
    "is_fee": false,
    "category_guess": "other",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Compra o acceso cerca de Santa Maria Novella en Firenze.",
    "description_confidence": "media",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "24/05/2026",
    "status": "manual",
    "merchant": "PANJETAN SNC",
    "amount_usd": -35.23,
    "tx_key": "vicky_manual|vicky-manual|V|24/05/2026|manual|PANJETAN SNC|-35.23",
    "id": "vicky-manual:176",
    "type": "expense",
    "is_fee": false,
    "category_guess": "shopping",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comercio local en Firenze; rubro exacto no confirmado.",
    "description_confidence": "media",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "25/05/2026",
    "status": "manual",
    "merchant": "CONAD",
    "amount_usd": -29.84,
    "tx_key": "vicky_manual|vicky-manual|V|25/05/2026|manual|CONAD|-29.84",
    "id": "vicky-manual:177",
    "type": "expense",
    "is_fee": false,
    "category_guess": "groceries",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Supermercado Conad.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "25/05/2026",
    "status": "manual",
    "merchant": "OPENAI *CHATGPT",
    "amount_usd": -20.0,
    "tx_key": "vicky_manual|vicky-manual|V|25/05/2026|manual|OPENAI *CHATGPT|-20.00",
    "id": "vicky-manual:178",
    "type": "expense",
    "is_fee": false,
    "category_guess": "subscription",
    "country_guess": "",
    "trip_scope": "non_trip",
    "allocation": "",
    "description": "Suscripción de OpenAI / ChatGPT.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "26/05/2026",
    "status": "manual",
    "merchant": "ROOSTER FIRENZE",
    "amount_usd": -28.18,
    "tx_key": "vicky_manual|vicky-manual|V|26/05/2026|manual|ROOSTER FIRENZE|-28.18",
    "id": "vicky-manual:179",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Restaurante o comida rápida en Firenze.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "26/05/2026",
    "status": "manual",
    "merchant": "ULTIMA SRLS",
    "amount_usd": -17.61,
    "tx_key": "vicky_manual|vicky-manual|V|26/05/2026|manual|ULTIMA SRLS|-17.61",
    "id": "vicky-manual:180",
    "type": "expense",
    "is_fee": false,
    "category_guess": "other",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Comercio local en Italia; rubro exacto no confirmado.",
    "description_confidence": "media",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "26/05/2026",
    "status": "manual",
    "merchant": "SHA JAHAN",
    "amount_usd": -185.55,
    "tx_key": "vicky_manual|vicky-manual|V|26/05/2026|manual|SHA JAHAN|-185.55",
    "id": "vicky-manual:181",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Restaurante indio o local gastronómico.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "27/05/2026",
    "status": "manual",
    "merchant": "RISTORANTE AL SOLE",
    "amount_usd": -34.12,
    "tx_key": "vicky_manual|vicky-manual|V|27/05/2026|manual|RISTORANTE AL SOLE|-34.12",
    "id": "vicky-manual:182",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Restaurante Al Sole.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "27/05/2026",
    "status": "manual",
    "merchant": "BUFFET MESTRE",
    "amount_usd": -9.89,
    "tx_key": "vicky_manual|vicky-manual|V|27/05/2026|manual|BUFFET MESTRE|-9.89",
    "id": "vicky-manual:183",
    "type": "expense",
    "is_fee": false,
    "category_guess": "food_drink",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Buffet o cafetería en Mestre/Venezia.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  },
  {
    "source": "vicky_manual",
    "source_ref": "vicky-manual",
    "paid_by": "V",
    "date": "27/05/2026",
    "status": "manual",
    "merchant": "DESPAR",
    "amount_usd": -34.95,
    "tx_key": "vicky_manual|vicky-manual|V|27/05/2026|manual|DESPAR|-34.95",
    "id": "vicky-manual:184",
    "type": "expense",
    "is_fee": false,
    "category_guess": "groceries",
    "country_guess": "",
    "trip_scope": "europe_trip",
    "allocation": "",
    "description": "Supermercado Despar.",
    "description_confidence": "alta",
    "description_source": "known_or_web"
  }
]