You could do this with workflows. Use the “transform record” action – it needs to run on the sales order itself. You can do this as a scheduled workflow, or as an aftersubmit (if you wanted it done on creation)
Try looking into Billing Operation Schedules. If you have this feature in your account it is typically under Transactions> Billing> Schedule Billing Operations. You can create a search for sales orders to isolate just those that will be cash sales.