from flask import Flask, request, jsonify

app = Flask(__name__)

@app.route('/mpesa/result', methods=['POST'])
def mpesa_result():
    data = request.get_json()
    print("M-Pesa Result Received:", data)

    # Extract transaction details
    result_code = data.get("Result", {}).get("ResultCode")
    result_desc = data.get("Result", {}).get("ResultDesc")

    # Check if the transaction was successful
    if result_code == 0:
        print("Withdrawal successful")
        # TODO: Update database, mark withdrawal as completed
    else:
        print(f"Withdrawal failed: {result_desc}")

    return jsonify({"Result": "Result received"}), 200

if __name__ == '__main__':
    app.run(port=5002, debug=True)
