Upvote:3
NZer here who has been to Canada several times (and lived in Vancouver).
You need evidence that you're going to leave the country (I've been asked for it every time, except when I had a residence visa).
This can be in the form of a plane ticket, but that's not always convenient. Like you, I've been there sometimes with a one-way ticket as I hadn't worked out what I was doing next.
The simplest solution generally is to buy a bus ticket (or refundable plane ticket) to the US. I use Greyhound for this. I actually asked for the cheapest option back in 2012, and there are optimal ways, but I found it just sounded more realistic to get one from Vancouver to Seattle, for example. They're often only like $10-25 with Greyound or Megabus or Boltbus.
Of course, your story needs to be at least possibly accurate, if you're just spending time in BC, having a ticket out of Halifax is going to be odd, so treat it as if that IS actually your plan, and you can change your plan once you're in the country, IF need be.