The kill counts were generally quite unreliable.
Whilst there was little to stop each side inflating the counts most of the inaccuracy comes from confusion during combat.
In a dogfight there were a large number of aircraft in a very small area, all doing 250+ mph, ducking, weaving, turning, dodging in to clouds and out of clouds and so on. A pilot may attack an enemy aircraft and claim it as a possible, seconds later the same enemy flashes past another pilot, who also attacks. In the matter of 3 or 4 seconds one single aircraft has been recorded as a possible by two different pilots.
Now multiply that by 40 or 50 and its easy to see how the counts suddenly became notoriously inaccurate.
I suppose each side could have disputed their enemies claims - "We only lost 20 aircraft yesterday, not 63 as claimed", but why would they want to give away their actual numbers to the enemy ? Best to just stay quiet. This can pay dividends - Goering was sure that the RAF were down to a very small number of aircraft and that his luftwaffe could easily defeat them. He was wrong, the RAF actually had many more planes that he thought / was told.
Recommended reading: The most dangerous enemy: A history of the battle of Britain by Stephen Bungay.
Didn't they have gun cameras?
They're generally not. At least the claimed numbers. That said, some of the higher Russian, German and Japanese numbers aren't due to inflation as much as differences in kill counting methods.
For example in the Luftwaffe, bombers were considered more than one kill. Much different than the kill system that shared kills used by the RAF or the USAAF. Likewise, shared kills usually counted as one tally for Japanese and German Pilots if I remember correctly. Ironically despite my general knowledge in aircraft technology and weaponry, I never really gave a long glance at how kill counts were counted. If only because there were so many possibilities for discrepancies including mixing of kills, identification, differing battle reports and confirmation.
That said, I will say that the Allied method (where verification required at least two other confirmations) is much more reliable than some reports. That said, the methodology of counting kills differs wildly between nations. Some counted bombers as more than one like the Germans, the Russians split individual counts and "team" counts, and the Japanese seemed to have done the same.
This becomes even more difficult when one observes how much air-time some of the aces have. Due to the differing in aerial doctrine for veteran pilots in each nation, some counts were inflated not for propaganda but due to the sheer amount of time a pilot was in rotation. Of course this has the side effect of high attrition ratings and eventual lowering of pilot quality in an air force, but German, Japanese and Russian aviation forces tended to keep well performing pilots in the field as opposed to in the rear where veterans could then train more pilots. Although this rule wasn't universal, the disparity in pilot "kill counts" can be explained from a combination of doctrine, methodology on how to count, and difficulty of verification.