We consider an overlapping generation framework with search and private information to study optimal taxation. Agents sequentially trade in markets that are characterized by different frictions and trading protocols. In frictional decentralized markets, agents receive shocks that determine if they are going to be consumers or producers. Shocks are private information. Mechanism design is used to solve for the constrained optimal allocation. We then study whether a government can replicate the constrained optimal allocation with an array of policy instruments including fiat money. We show that if the government has a full set of non-linear taxes, then lump-sum taxes and inflation are irrelevant for the allocation. However, if the government is constrained to use linear taxes, then using the inflation tax is optimal even if lump-sum taxes are available.