I use org-capture for manually enter Ledger records. Even though it's a manual process, I was able to choose the prompt from a history. For example, when asked for a value for Payee, helm lists all the historical values for Payee, if I type 'A', then helm would filter the candidates to "Amazon", provided with the following setup.
(setq org-capture-template-prompt-history::Payee '("Amazon" "Spotify"))
Recently, I upgraded my Emacs from 26 to 27 and other packages. I cannot get this behavior anymore.