I am in a bit complicated situation. I was hired back in 2016 May by the current employer. During the hiring process, I was told that I would have up to 28 vacation days proportionately increase based on the years of service I provide. This was communicated verbally, and I believed what he told me. Upon hired, I signed the offer letter that stated my vacation days "starts" with 18 days. Offer letter did not mention anything about the "cap".
And a year passed, in 2017 May, I received an email from HR telling me that they forgot sending me an employment contract which I was supposed to read and sign when I was hired in 2016 May. They attached the contract documents, and I found that it says that my vacation days is actually capped to 20 vacation days, not 28.
The 28-vacation days cap applies to those who were hired long time ago and the hiring manger was one of those. He didn't do proper research for how many days the new hires would get, and hence he misinformed me.
At the same time, HR made a mistake not sending me an employment contract before I sign the offer letter.
I voiced to the hiring manager but he seems to be reluctant to proceed with fixing it.
I was wondering that, if this cannot be fixed internally, what external actions (e.g. consulting with labour laws?) are available? I live in Canada.
Edit: clarified 28 days as 28 vacation days.