A one-page checkout — contact, delivery address, payment method and an order summary whose delivery, tax and payment fee are derived from the form in the same render, in integer minor units, so the lines always add up to the button and the money can never lag the address.
npx shadcn@latest add @zyeon/checkout-formZyeon UI limits how often it can be asked, and Checkout Form hasn't had its turn. Its source will show here once it has.