Old English bycgan (past tense bohte) "get by paying for, acquire the possession of in exchange for something of like value; redeem, ransom; procure; get done," from Proto-Germanic *bugjan (source also of Old Saxon buggjan, Old Norse byggja, Gothic bugjan), which is of unknown origin and not found outside Germanic.
The surviving spelling is southwest England dialect; the word was generally pronounced in Old English and Middle English with a -dg- sound as "budge," or "bidge." Meaning "believe, accept as true" is attested by 1926. Related: Bought; buying. To buy time "prevent further deterioration but make no improvement" is attested from 1946.