Money Lover - Money Manager 图标

Money Lover 钱包、预算与关联银行数据 API

Finsify · 银行

Money Lover - Money Manager 是 Finsify 推出的个人财务管理应用,可在多个钱包中记录现金、银行账户及信用卡收支。用户能够登记收入与支出,按类别和标签整理交易,设置循环预算、跟踪储蓄目标、扫描收据,并与家人共用钱包。Linked Wallets 通过 Finsify 连接银行账户,Google Sheets 导出和 AI 辅助交易录入则方便日常记账。它面向越南、美国、印度、印度尼西亚、泰国和菲律宾的个人预算管理者、家庭及小型团队,让用户把现金与银行卡账目汇总在同一本账簿中,而不局限于查看某一家银行的账户。

钱包归属与按类别归集的支出共同构成个人财务账簿:account_id 将记账条目关联到钱包,balance、account_type、is_shared 和 owner_id 则说明钱包余额、账户类型、共享状态与归属。交易记录进一步提供 display_date、amount、note、cat_id 和 original_currency。信封预算通过 listWalletUUID 和 listLabelUUID 关联钱包与标签,并记录 startDate、endDate 和 totalSpent,使家庭预算看板能够比较实际支出与各项预算上限。储蓄记录将 goal_amount、transaction_amount 与 end_date 配合使用,便于展示储蓄进度。

关联银行快照包含 accountId、balance 和 currency,银行服务商的 countryCode 可用于按市场筛选。收据建议提供 merchant、displayDate、categoryId 和 confidence;文本录入建议则通过 walletID、labelName 和 fn 帮助将待确认的支出归入账簿。在用户授权访问账户的前提下,记账工具可核对本地钱包与关联银行的余额,家庭账簿集成可保留归属与权限信息,收据收件箱则可准备条目供用户确认。openData Studio 将这些钱包、预算和交易结构转化为可调用的开放数据。

应用截图

  • Money Lover - Money Manager 应用截图 1
  • Money Lover - Money Manager 应用截图 2
  • Money Lover - Money Manager 应用截图 3
  • Money Lover - Money Manager 应用截图 4
  • Money Lover - Money Manager 应用截图 5
  • Money Lover - Money Manager 应用截图 6
  • Money Lover - Money Manager 应用截图 7
  • Money Lover - Money Manager 应用截图 8

API 端点一览

以下端点与请求/响应示例均依据应用界面推导重构,为示意说明,并非实际抓包。

  • 拉取同步钱包

    POST /v1/household-books/wallets/query openfinance

    分页获取已登录用户在 last_update 之后更新的现金钱包、银行钱包和信用卡钱包,提供名称、余额与共享标记,用于展示钱包列表。

    认证方式: 使用已登录账户的 Bearer 访问令牌进行认证。钱包同步还需携带 dataformat、platform、appversion 和 apiversion 请求头。

    • uuid
    • name
    • balance
    • account_type
    • icon
    • archived
    • is_shared
    • owner_id
    • metadata
    • exclude_total
    • account_id
    • last_update
    POST /v1/household-books/wallets/query HTTP/1.1
    Authorization: Bearer <access_token>
    Content-Type: application/json
    
    {
      "last_update": 0,
      "account_id": "example_wallet_01",
      "skip": 0,
      "limit": 50,
      "av": 4,
      "pl": 1
    }
    {
      "status": true,
      "data": [
        {
          "uuid": "example_wallet_01",
          "name": "Cash",
          "balance": 1250000,
          "account_type": 0,
          "icon": "icon_cash",
          "archived": 0,
          "is_shared": 0,
          "owner_id": "example_owner_01",
          "metadata": "",
          "exclude_total": 0
        }
      ]
    }
  • 拉取同步交易

    POST /v1/household-books/entries/query openfinance

    使用 skip 和 limit 分页获取钱包在 last_update 之后更新的账簿记录,包括 amount、display_date、note、收支类别及 original_currency。

    认证方式: 使用已登录账户的 Bearer 访问令牌进行认证。

    • uuid
    • account_id
    • amount
    • display_date
    • note
    • cat_id
    • original_currency
    • exclude_report
    • address
    • latitude
    • longtitude
    • flag
    • remind_date
    • user_sync_id
    • last_update
    • skip
    • limit
    POST /v1/household-books/entries/query HTTP/1.1
    Authorization: Bearer <access_token>
    Content-Type: application/json
    
    {
      "last_update": 0,
      "account_id": "example_wallet_01",
      "skip": 0,
      "limit": 100,
      "av": 4,
      "pl": 1
    }
    {
      "status": true,
      "data": [
        {
          "uuid": "example_entry_01",
          "account_id": "example_wallet_01",
          "amount": 45000,
          "display_date": 1737475200000,
          "note": "Lunch",
          "cat_id": 12,
          "original_currency": "VND",
          "exclude_report": 0,
          "address": "District 1, HCMC",
          "latitude": 10.7769,
          "longtitude": 106.7009,
          "flag": 1,
          "remind_date": 0,
          "user_sync_id": "example_owner_01"
        }
      ]
    }
  • 推送本地交易

    POST /v1/household-books/entries/submit openfinance

    提交新建或修改过的账簿条目,让同一账户的其他设备获得一致的金额、日期与收支类别。

    认证方式: 使用已登录账户的 Bearer 访问令牌进行认证。

    • account_id
    • uuid
    • amount
    • display_date
    • note
    • cat_id
    • original_currency
    • exclude_report
    • status
    • message
    POST /v1/household-books/entries/submit HTTP/1.1
    Authorization: Bearer <access_token>
    Content-Type: application/json
    
    {
      "account_id": "example_wallet_01",
      "transactions": [
        {
          "uuid": "example_entry_01",
          "amount": 45000,
          "display_date": 1737475200000,
          "note": "Lunch",
          "cat_id": 12,
          "original_currency": "VND",
          "exclude_report": 0
        }
      ]
    }
    {
      "status": true,
      "message": "ok",
      "pushed": 1
    }
  • 拉取同步预算

    POST /v1/spending-envelopes/query opendata

    获取包含钱包与标签 UUID 列表、起止日期及 totalSpent 的信封预算,以计算剩余可支出额度。

    认证方式: 使用已登录账户的 Bearer 访问令牌进行认证。

    • uuid
    • name
    • amount
    • startDate
    • endDate
    • curId
    • isRepeat
    • budgetType
    • listWalletUUID
    • listLabelUUID
    • totalSpent
    POST /v1/spending-envelopes/query HTTP/1.1
    Authorization: Bearer <access_token>
    Content-Type: application/json
    
    {
      "last_update": 0,
      "skip": 0,
      "limit": 50
    }
    {
      "status": true,
      "data": [
        {
          "uuid": "example_budget_01",
          "name": "Food",
          "amount": 3000000,
          "startDate": "2026-10-01",
          "endDate": "2026-10-31",
          "curId": 1,
          "isRepeat": true,
          "budgetType": 1,
          "listWalletUUID": ["example_wallet_01"],
          "listLabelUUID": ["example_label_food"],
          "totalSpent": 1280000
        }
      ]
    }
  • 创建全局预算

    POST /v1/spending-envelopes/create opendata

    为选定的钱包和标签创建跨钱包信封预算,设置支出上限、起止日期及可选的循环周期。

    认证方式: 使用已登录账户的 Bearer 访问令牌进行认证。

    • status
    • uuid
    • name
    • amount
    • startDate
    • endDate
    • curId
    • isRepeat
    • budgetType
    • listWalletUUID
    • listLabelUUID
    • totalSpent
    POST /v1/spending-envelopes/create HTTP/1.1
    Authorization: Bearer <access_token>
    Content-Type: application/json
    
    {
      "name": "Food",
      "amount": 3000000,
      "startDate": "2026-10-01",
      "endDate": "2026-10-31",
      "curId": 1,
      "isRepeat": true,
      "budgetType": 1,
      "listWalletUUID": ["example_wallet_01"],
      "listLabelUUID": ["example_label_food"]
    }
    {
      "status": 200,
      "data": {
        "uuid": "example_budget_01",
        "name": "Food",
        "amount": 3000000,
        "startDate": "2026-10-01",
        "endDate": "2026-10-31",
        "curId": 1,
        "isRepeat": true,
        "budgetType": 1,
        "listWalletUUID": ["example_wallet_01"],
        "listLabelUUID": ["example_label_food"],
        "totalSpent": 0
      }
    }
  • 拉取同步收支类别

    POST /v1/household-books/category-tree/query opendata

    同步各钱包的收入与支出类别,包括由 parent_id 表示的层级、图标及 meta_data 标记。

    认证方式: 使用已登录账户的 Bearer 访问令牌进行认证。

    • uuid
    • cat_id
    • cat_name
    • cat_type
    • cat_img
    • parent_id
    • account_id
    • meta_data
    • flag
    • version
    POST /v1/household-books/category-tree/query HTTP/1.1
    Authorization: Bearer <access_token>
    Content-Type: application/json
    
    {
      "last_update": 0,
      "account_id": "example_wallet_01"
    }
    {
      "status": true,
      "data": [
        {
          "uuid": "example_category_food",
          "cat_id": 12,
          "cat_name": "Food",
          "cat_type": 2,
          "cat_img": "icon_food",
          "parent_id": 0,
          "account_id": "example_wallet_01",
          "meta_data": "",
          "flag": 1,
          "version": 3
        }
      ]
    }
  • 拉取同步标签

    POST /v1/household-books/label-library/query opendata

    获取全局标签库,用于在不同钱包间整理收支类别并建立类别映射。

    认证方式: 使用已登录账户的 Bearer 访问令牌进行认证。

    • status
    • timestamp
    • uuid
    • name
    • type
    • img
    • parent_id
    • meta_data
    • version
    • account_id
    POST /v1/household-books/label-library/query HTTP/1.1
    Authorization: Bearer <access_token>
    Content-Type: application/json
    
    {
      "last_update": 0
    }
    {
      "status": true,
      "timestamp": 1737500000000,
      "data": [
        {
          "uuid": "example_label_food",
          "name": "Food",
          "type": 2,
          "img": "icon_food",
          "parent_id": 0,
          "meta_data": "",
          "version": 1,
          "account_id": 0
        }
      ]
    }
  • 拉取储蓄计划

    POST /v1/savings-targets/query opendata

    同步储蓄及活动资金计划,通过 goal_amount、transaction_amount 和 end_date 跟踪进度。

    认证方式: 使用已登录账户的 Bearer 访问令牌进行认证。

    • uuid
    • name
    • icon
    • type
    • start_amount
    • goal_amount
    • status
    • transaction_amount
    • account_id
    • account_name
    • cur_code
    • end_date
    POST /v1/savings-targets/query HTTP/1.1
    Authorization: Bearer <access_token>
    Content-Type: application/json
    
    {
      "last_update": 0
    }
    {
      "status": true,
      "data": [
        {
          "uuid": "example_goal_01",
          "name": "Emergency fund",
          "icon": "icon_saving",
          "type": 1,
          "start_amount": 0,
          "goal_amount": 20000000,
          "status": 1,
          "transaction_amount": 3500000,
          "account_id": "example_wallet_01",
          "account_name": "Cash",
          "cur_code": "VND",
          "end_date": "2026-12-31"
        }
      ]
    }
  • 列出关联钱包的银行服务商

    GET /v1/bank-connections/provider-catalog openbanking

    列出 Linked Wallets 可连接的银行服务商,包括名称、图标及用于按市场筛选的 countryCode。

    认证方式: 使用已登录账户的 Bearer 访问令牌进行认证。

    • status
    • id
    • name
    • icon
    • countryCode
    GET /v1/bank-connections/provider-catalog HTTP/1.1
    Authorization: Bearer <access_token>
    Accept: application/json
    {
      "status": 200,
      "data": [
        {
          "id": "vcb",
          "name": "Vietcombank",
          "icon": "/illustrations/banks/example-provider.svg",
          "countryCode": "VN"
        }
      ]
    }
  • 创建关联钱包授权链接

    POST /v1/bank-connections/sessions/create openbanking

    为选定的银行服务商发起连接会话,返回供用户授权的 linkUrl,完成授权后再获取钱包快照。

    认证方式: 使用已登录账户的 Bearer 访问令牌进行认证。

    • status
    • linkUrl
    • providerId
    • callbackUrl
    POST /v1/bank-connections/sessions/create HTTP/1.1
    Authorization: Bearer <access_token>
    Content-Type: application/json
    
    {
      "providerId": "vcb",
      "callbackUrl": "<callback_url>"
    }
    {
      "status": 200,
      "data": {
        "linkUrl": "<bank_connect_url>"
      }
    }
  • 读取关联钱包信息

    POST /v1/bank-connections/balance-snapshot openbanking

    在用户授权后获取关联银行账户的余额、币种与账户元数据,用于初始化钱包。

    认证方式: 使用已登录账户的 Bearer 访问令牌进行认证。

    • status
    • id
    • name
    • accountId
    • balance
    • currency
    • icon
    • metadata
    POST /v1/bank-connections/balance-snapshot HTTP/1.1
    Authorization: Bearer <access_token>
    Content-Type: application/json
    
    {
      "accountId": "example_bank_account_01"
    }
    {
      "status": 200,
      "data": {
        "id": "example_linked_wallet_01",
        "name": "Vietcombank *1234",
        "accountId": "example_bank_account_01",
        "balance": 15230000,
        "currency": "VND",
        "icon": "vcb",
        "metadata": "{\"provider\":\"vcb\"}"
      }
    }
  • AI 解析交易文本

    POST /v1/entry-assistance/text/prepare opendata

    将自由输入的支出文本或通知片段转换为包含钱包、标签、金额与日期的记账建议,交由用户确认。

    认证方式: 使用已登录账户的 Bearer 访问令牌进行认证。

    • status
    • walletID
    • walletName
    • labelID
    • labelName
    • amount
    • date
    • description
    • fn
    • tokenOut
    • tokenIn
    • totalTokens
    • aiModel
    • requestId
    POST /v1/entry-assistance/text/prepare HTTP/1.1
    Authorization: Bearer <access_token>
    Content-Type: application/json
    
    {
      "text": "lunch 45k at Circle K yesterday",
      "walletID": "example_wallet_01"
    }
    {
      "status": 200,
      "data": {
        "transactions": [
          {
            "walletID": "example_wallet_01",
            "walletName": "Cash",
            "labelID": "example_label_food",
            "labelName": "Food",
            "amount": 45000,
            "date": "2026-10-22",
            "description": "Circle K lunch",
            "fn": "expense"
          }
        ],
        "metadata": {
          "tokenOut": 80,
          "tokenIn": 24,
          "totalTokens": 104,
          "aiModel": "<illustrative_model>",
          "requestId": "example_request_01"
        }
      }
    }
  • 邀请家人共享钱包

    POST /v1/household-books/members/invite opendata

    按选定权限邀请另一个账户加入家庭钱包,返回共享标记、归属及待处理邀请。

    认证方式: 使用已登录账户的 Bearer 访问令牌进行认证。

    • account_id
    • email
    • permission
    • is_shared
    • owner_id
    • pending
    • status
    POST /v1/household-books/members/invite HTTP/1.1
    Authorization: Bearer <access_token>
    Content-Type: application/json
    
    {
      "account_id": "example_wallet_01",
      "email": "<invitee_email>",
      "permission": "edit"
    }
    {
      "status": true,
      "data": {
        "account_id": "example_wallet_01",
        "is_shared": 1,
        "owner_id": "example_owner_01",
        "pending": [
          {
            "email": "<invitee_email>",
            "permission": "edit"
          }
        ]
      }
    }
  • 上传收据获取 OCR 建议

    POST /v1/entry-assistance/receipts/prepare opendata

    根据收据文本生成 amount、merchant、displayDate 和 categoryId 建议,同时提供 confidence 与 currency,用于预填账簿条目。

    认证方式: 使用已登录账户的 Bearer 访问令牌进行认证。收据请求还需携带 dataformat=json、platform、appversion、apiversion 和 client 请求头。

    • ocrText
    • walletCurrency
    • inputSource
    • status
    • generationID
    • amount
    • categoryId
    • displayDate
    • note
    • merchant
    • originalCurrency
    • confidence
    • address
    • isTransfer
    POST /v1/entry-assistance/receipts/prepare HTTP/1.1
    Authorization: Bearer <access_token>
    Content-Type: application/json
    
    {
      "ocrText": "CIRCLE K\n22/10/2026\nTOTAL 45,000 VND",
      "walletCurrency": "VND",
      "inputSource": "camera",
      "categories": [
        {"id": "example_label_food", "name": "Food"}
      ]
    }
    {
      "status": true,
      "generationID": "example_receipt_01",
      "data": {
        "amount": 45000,
        "categoryId": "example_label_food",
        "displayDate": "2026-10-22",
        "note": "Circle K",
        "merchant": "CIRCLE K",
        "originalCurrency": "VND",
        "confidence": 0.92,
        "address": "",
        "isTransfer": false
      }
    }

数据类别

  • 钱包
  • 交易
  • 预算
  • 收支类别
  • 标签
  • 储蓄计划
  • 关联银行账户
  • 共享钱包
  • 收据

数据使用场景与案例

  • 家庭信封预算看板

    个人财务看板将信封预算的 amount、startDate、endDate、listWalletUUID、totalSpent 与账簿记录的 display_date、amount、cat_id、original_currency 结合,按标签展示剩余可支出额度。

  • 关联银行与现金钱包对账

    记账机器人列出银行服务商的 id 和 countryCode,保存用户授权的关联钱包快照(accountId、balance、currency),再与本地现金钱包及银行钱包的余额进行比较。

  • 家庭共享账簿同步

    家庭 Wiki 将钱包邀请中的 email、permission、owner_id、is_shared 与所选 account_id 下的分页账簿记录结合,让两部手机显示一致的备注和金额。

  • 将收据收件箱接入账簿

    电子邮件收据处理程序提交 ocrText,根据建议的 merchant、amount、displayDate 和 categoryId 准备记账条目;也可用通知文本生成含 walletID、labelName 和 fn 的建议,交由用户确认。

常见问题

Money Lover 数据 API 涵盖哪些钱包与账簿字段?

钱包记录包括 uuid、name、balance、account_type、is_shared 和 owner_id。账簿条目包括 amount、display_date、note、cat_id、original_currency 和 exclude_report,也可包含地址及位置字段。示例采用说明性路径和模拟值,并非实际服务地址。

Linked Wallets 如何将银行余额与个人账簿关联?

银行服务商目录包含 id、name 和 countryCode。用户授权的连接会提供 linkUrl,以及包含 accountId、balance、currency 和元数据的关联钱包快照。记账集成可将该快照与同一用户的现金钱包和银行钱包进行比较。

哪些字段支持预算、储蓄目标与收据录入?

预算使用 listWalletUUID、listLabelUUID、amount、startDate、endDate 和 totalSpent。储蓄目标使用 goal_amount、transaction_amount 和 end_date。收据建议包含 merchant、amount、displayDate、categoryId 和 confidence,文本录入建议则包含 walletID、labelName、date 和 fn。

账户数据与共享钱包权限如何受到保护?

示例请求保留已登录账户的 Bearer 令牌认证。钱包记录通过 owner_id 和 is_shared 区分归属与共享状态,邀请中包含 email、permission 和待处理状态。访问个人余额、账簿条目及银行连接均须获得账户持有人的授权;示例不含可用凭据。

与 Money Lover - Money Manager 相似的应用

  • Wallet: Budget Expense Tracker — Wallet(BudgetBakers)是一款个人理财应用,可记录支出、同步银行交易、设定预算,并让家庭成员共享指定账户。
  • Spendee — Spendee 是一款资金管理应用,可跟踪现金、银行账户、电子钱包和加密钱包的收支,并提供银行导入、分类预算和共享钱包。
  • YNAB — YNAB(You Need A Budget)是覆盖 iOS、Android 和网页的个人理财应用,帮助用户先规划再消费、跟踪账户余额与支出,并可与家人共享订阅。
  • Monefy — Monefy 是一款个人理财与记账应用,用于记录消费,支持 150 多种货币,并可在 iOS 与 Android 上与伴侣同步预算。
  • Toshl Finance — Toshl Finance 是覆盖 Android、iOS 和网页的个人理财应用,用图表展示支出、设定预算、跟踪收入,并支持多币种和银行账户连接。
  • Goodbudget — Goodbudget 是一款基于虚拟信封记账法的家庭预算应用,可在网页、Android 和 iPhone 上跟踪支出并共享信封。
  • AndroMoney — AndroMoney 是覆盖 Android、iPhone 和网页的个人理财应用,可记录支出、收入和转账,并提供月度与分类预算以及超支提醒。

相关主题

  • Money Lover 数据 API
  • Money Lover 钱包
  • Finsify 关联钱包
  • 记账应用交易记录
  • Money Lover 预算
  • Money Lover 储蓄目标
  • 收据 OCR 商户字段
  • 家庭共享账簿
  • 关联银行余额对账

需要集成这个 App 的数据 API?

我们可为任意指定 App 交付定制集成——源码交付 USD 500 起,或托管 API 按调用计费。告诉我们您需要的数据即可。

  • 每个项目均签 NDA 与 SOW
  • 3–7 天交付
  • 验收通过后才付款
  • 仅在授权范围内作业

获取报价