1
📥
Ambil data cawanganAPI POS — jualan, trafik, kakitangan
2
🧮
Kira kadar konversiJualan ÷ Trafik × 100 setiap cawangan
3
🔍
Analisis prestasiBandingkan jualan, trafik, konversi
4
📊
Laporan & sarananPeringkat prestasi + peluang penambahbaikan
import requests, json, pandas as pd
API_POS = "https://api.retail.com/v2/branches/performance"
def fetch_branch_data(month):
resp = requests.get(API_POS, params={"month": month})
return resp.json().get("branches", [])
def analyze_branches(branches):
df = pd.DataFrame(branches)
df["conversion"] = df["sales"] / df["traffic"] * 100
df["rank"] = df["conversion"].rank(ascending=False)
gaps = df[df["conversion"] < df["conversion"].median()]
return {
"avg_conversion": round(df["conversion"].mean(), 1),
"total_sales": round(df["sales"].sum(), 2),
"top_branch": df.loc[df["conversion"].idxmax(), "name"],
"improvement": len(gaps),
"gap_actions": round(gaps["sales"].sum() * 0.05, 2)
}
report = analyze_branches(fetch_branch_data("2026-06"))
print(json.dumps(report))