I am writing custom ecommerce in .NET 5 and I want to implement "wallet" feature. What does it mean? Basically user can deposit his money right there. Sometimes (in case of e.g. resignation from service too late) 50% of price will be returned to this wallet and that money will only be available to be used for another purchase in my store. How should I implement this feature in order to achieve the greatest level of security? I am little bita wared that persisting this information in plain database rows is not enough.
Maybe there are some third-party providers that offers this kind of service? I am considering usage of Stripe as payment vendor.