import requests, json, pandas as pd
from datetime import datetime, timedelta
BANK_API = "https://api.bank.com/v1/transactions"
THRESHOLD_BALANCE = 10000
def fetch_cash_flow(months=2):
resp = requests.get(BANK_API, params={"months": months})
return resp.json().get("transactions", [])
def categorize_cash_flow(data):
df = pd.DataFrame(data)
summary = {
"operating": df[df["type"]=="operating"]["amount"].sum(),
"investing": df[df["type"]=="investing"]["amount"].sum(),
"financing": df[df["type"]=="financing"]["amount"].sum(),
"net_change": df["amount"].sum(),
"closing": df.iloc[-1]["balance"]
}
return summary
def forecast_runway(closing_balance, monthly_burn):
runway_months = closing_balance / abs(monthly_burn) if monthly_burn < 0 else 99
return {"runway_months": round(runway_months, 1), "balance": closing_balance}
report = categorize_cash_flow(fetch_cash_flow())
print(json.dumps(report, indent=2))