DO NOT TAKE the Expreso Bavaro-Santo Domingo from PUJ. They do not pass via SPM.
Instead, take Expreso Bavaro-Higuey to Higuey, to Sichoprola (in front of Basilica). Take ANY bus (I recommend Expreso) from there, as all go via SPM. Get off in SPM and take local taxi or motoconcho.
Expreso Bavaro-Higuey leaves from the same terminal (right-side) as Expreso Bavaro-Santo Domingo (left side). They leave (I think) on an hour. Cost is 100 pesos (I think... - used to be 90, but went up, did not travel yet after the increase).
You do not need to purchase advanced ticket for Expreso Bavaro-Higuey. You can also use caliente bus (this really IS caliente - "hot") if you miss expreso and do not want to wait for another one.
In Higuey, you DO NEED to purchase advanced ticket for Expreso Higuey-Santo Domingo. You do not need to purchase ticket for caliente bus -- these caliente buses are nowadays rarely "caliente-hot" and most services now have AC.