potresti provare ad usare un sistema di codici "ortogonali" ovvero un sistema in cui ogni codice sovrappone diverse informazioni che però è possibile recuperare separatamente (qualcosa di simile all'uso dei flag)

ad esempio il numero 427 potrei interpretarlo come l'insieme di 3 paramentri: 4,2 e 7 che mi danno 3 informazioni indipendenti nonostante siano inglobate in un unico numero. Ciò che è inportante è che ogni paramentro vada da 1 a 9 (si potrebbe usare anche lo 0 ma le cose si complicano)

Per codificare le info potresti fare così:

if($_GET[pagamento] == "") $a += 1;
elseif($_GET[pagamento] == "ricevuta") $a += 2;
elseif($_GET[pagamento] == "bonifico") $a += 3;

if($_GET[pagamento] == "") $a += 10;
elseif($_GET[pagamento] == "ricevuta") $a += 20;
elseif($_GET[pagamento] == "bonifico") $a += 30;

così i vari casi daranno come valore di $a: 11,12,13,21,22,23,31,32,33