Aprx does not natively support external hooks for the built-in telemetry engine since that would make it prohibitively flexible, but you still have a few options:
1. If you're capable of coding in C, the telemetry engine is one of the less obtuse parts of the Aprx code base, so you can make your own custom build modifying one of the "s += sprintf(s,..." lines in telemetry.c:telemetry_datatx() to use your battery voltage and update the labels in telemetry_labeltx().
2. You can completely disable the built-in telemetry engine and write your own telemetry producer in any language you want and have Aprx call it as a beacon exec line. Your program will need to store the sequence number run to run since APRS telemetry expects to have a 000-999 sequence number that increments.
Just ignore the parts where I talk about how telemetry should support full floating point; we never made a strong decision about that.