Further to dirkclod's message above, sometimes it's just the balance-charging circuit boards within the battery itself which go wrong as well. That was the problem with mine (discharging very quickly) so I removed the board and put some balance leads in so that I could charge and discharge it with my usual balance charger.
My old controller battery works perfectly now and I also fitted an XT30 connector and put the lead outside the controller, so not only is my controller lighter with no battery inside, but I can also use any of my normal 2S lipos for it now.
However, if that's not your thing, the standard battery is a 2S1P 6000mAh battery (44.4Wh) and can be bought from here:-
Buy 6000mAh Battery Replacement for DJI Phantom 3 Drones Controller Phantom 4 Controller
Inspire 2 Controller
Phantom 4 Pro Controller GL300C GL300C 1650120 GL300F GL300E 7.4V: Household Batteries - Amazon.com ✓ FREE DELIVERY possible on eligible purchases
www.amazon.com
or, alternatively, here:-
DJI 1650120. DJI GL300C. DJI GL300E. DJI GL300F. Capacity : 6000mAh. In addition, prior to submitting the order, all data entered will be displayed in a confirmation window and can be corrected here as well, via the usual keyboard and mouse function.
www.ebay.co.uk