We are going to mount a vsan cluster with 3 nodes and we need the total capacity of the space available for the machines to be 4 TB. Counting that we are going to mount all flash and raid 1, what total disk space do I need to buy? I know you need to keep a cache space, but I'm not sure how much you need.
Take a look to https://vsansizer.vmware.com/ or VMware® vSAN™ Design and Sizing Guide | VMware
In a AFA configuration the "cache" disk is only for buffering the writes. So it depends on how much writes you expect. Normal drive size would be between 400-800 GB (iirc in early vsan version the was a 800gb "limit"). The "buffer" device doesnt count into capacity calculation. So 4TB VMs *2 (RAID1) + Witnesses + vSAN Overhead + Free space = needed space. Something like a couple of 960GB RI SATA/SAS SSD for example.
You can lurking to the ReadyNodes configuration from HPE/DellEMC if you like.