こんにちは。nap5です。
reactでカート機能(決済ページは除く)を作ってみましたので、紹介したいと思います。
決済ページの部分はstripe checkoutやamazon pay、Google payなどに互換できるようにして、あらかじめイベントが発火するDOM定義だけしておけば、イベントハンドラのロジック部分は置換するだけになるので、デザインの自由度を残しつつ、工数は抑えることができます。
Stripeなどは専用のreact hookを用意しているので、それを使っていくのが、安牌な気がします。
デモサイトです。
簡単ですが、以上です。