Currently the only ways available to set up a server with currency are by putting a creative vendor somewhere or doing something fancy with datapacks/kubejs. I feel like the first option has a level of inconvenience to it with regards to requiring players to travel to the vendor to make their transaction while the second option can be too technical for people who have never dealt with kubejs or datapacks before. I wanted to propose a third option that mitigates both of these issues.
My idea is a block called the Mint. Essentially it is a creative vendor however all mint blocks across the server share the same trades, edit one mint and all other mints on the server change as well. The trade available in the mint could either be configured by a config file or an in-game gui that only op players can access. The mint would be craftable in survival, allowing a player to craft one, place it at their base, and use it to exchange whatever item the server has set up in exchange for whatever exchange rate of currency the server decides.
I made a test model of what a mint block could hypothetically look like. As it would have a fixed trade and no gui for players without op, I thought it intuitive to have 2 spots on the front texture of the block to display what the input item and output currency denomination would be.