Heflin war zwischen 1893 und 1894 Bürgermeister von La Fayette. Dann war er von 1894 bis zu seinem Rücktritt 1896 Register an der Chancery. Danach war er zwischen 1896 und 1900 Mitglied im Repräsentantenhaus von Alabama. Er nahm 1901 als Delegierter an der verfassungsgebenden Versammlung von Alabama teil. Dann war er von 1902 bis zu seinem Rücktritt 1904 geschäftsführender Beamter (Secretary of State).
Heflin wurde in den 58. US-Kongress gewählt, um dort die Vakanz zu füllen, die durch den Tod von Charles Winston Thompson entstand. Er wurde in die acht nachfolgenden US-Kongresse wiedergewählt. Heflin war im US-Repräsentantenhaus vom 19. Mai 1904 bis zu seinem Rücktritt am 1. November 1920 tätig, um für den US-Senat zu kandidieren. Während seiner Zeit im US-Abgeordnetenhaus hatte er den Vorsitz über das Committee on Industrial Arts and Expositions (62. Kongress).
Heflin wurde am 2. November 1920 in den US-Senat gewählt, um dort die Vakanz zu füllen, die durch den Tod von John H. Bankhead (1842–1920) entstand. Dessen Amtszeit hätte am 3. März 1925 geendet. Heflin wurde 1924 wiedergewählt, erlitt allerdings bei seinem zweiten Wiederwahlversuch eine Niederlage, sowie bei mehreren anderen Wahlen für den US-Kongress und US-Senat. Er war im US-Senat vom 3. November 1920 bis zum 3. März 1931 tätig.
Dann ging er zwischen 1936 und 1937 einer Beschäftigung als special assistant des United States Attorney General in Alabama nach. Ferner war er zwischen 1935 und 1936 sowie noch einmal zwischen 1939 und 1942 Sonderbeauftragter der Federal Housing Administration. Danach ging er in den Ruhestand.