mmm.. interesante... no quiero que lo tomes a mal, solo que estás pidiendo el asesoramiento de un Analista, y poco tiene que ver esta etapa con PHP, ya que lo unico que se hace con el PHP es codificar las consultas SQL de tu BD y transferirlas de manera visual y tangible para el usuario final.
Entiendo tu desesperación y el embrollo que tienes en la cabeza, pero debes plantearte primero que nada la estructura de tus tablas, campos, foreign key y demás... despues ya solo con el PHP haces los cálculos necesarios. Creo que con simples select puedes traer los datos de tablas relacionadas... por ejemplo.
Código PHP:
//consulta de saldo a pagar
$sql_saldo="select ((v.totalventa - sum(c.importepago))- v.importeentrega) as saldocuenta
from cobranzas as c,ventas as v
where c.idventa=v.idventa
and v.idventa=".$_GET['key']."
group by v.totalventa, v.importeentrega";
$consulta_saldo= pg_query($conn, $sql_saldo);
$sald= pg_fetch_array($consulta_saldo);
//consulta de total pagado hasta el momento
$sql_tpago="SELECT sum(c.importepago) AS tpago
FROM cobranzas AS c,ventas as v
WHERE c.idventa=v.idventa
AND v.idventa=".$_GET['key'];
$consulta_tpago= pg_query($conn, $sql_tpago);
$tpago= pg_fetch_array($consulta_tpago);
Esto es un ejemplo para postgres por eso cambian un poco las funciones del php como el pg_query en vez de mysql_query... y yo pasandole un parámetro de ID de cliente o alumno ya sabría ciertos datos numéricos, y depende de lo que quiero hacer, puedo sumar, restar u otra operación matemática necesaria para obtener el dato exacto, pero amigo.... DEPENDE DE LA ESTRUCTURA DE TU BASE DE DATOS.
Mi consejo ante esto es que comiences por ahi, y de a poco vayas planteando cuenstiones simples y donde te tranques nos tiras consultas, a mi me encantan los sistemas web con la potencia del SQL.