Without seeing the actual logo it's not possible to give a definitive answer to this, but importing it as a Shape Layer or vector paths would be the best way to do it if it's a simple logo, because your PSD would then contain live vector shapes that would output cleanly to PDF.
When you import a vector logo (or any other vector) as a Smart Object, Photoshop retains the vector information inside the Smart Object, but what is presented in the PSD is a raster representation of the contents of the S.O. at whatever the resolution is of the PSD. A Smart Object is always a raster interpretation of its contents at the same resolution as the containing document. When the PSD is saved, or output to PDF, it's the raster representation that is output, not the vector information.
Since you're sending this to PDF, your best bet would be to increase the resolution of the PSD to 600 ppi or greater without changing its print dimensions (i.e., turn on "Resample image" in the Image Size dialog, then increase the ppi). When you save this as a PDF, the print dimensions will be the same, but you'll get cleaner edges on your logo than you would from a 300 ppi document.
An alternative, better approach would be to place the PSD template into InDesign as a background, without the logo or text, then add both text and logo in InDesign. Given that you're stuck with the template you purchased, that might be the better way to go at this point.