Avoid the prefixes bi- and semi- for purposes of references to time—they’re confusing.
Bimonthly means “every two months” and semimonthly means “every half-month,” in other words “twice a month.” Biweekly and semiweekly reflect the same distinction. But biannual and semiannual both mean “occurring twice a year,” whereas biennial means “occurring once every two years.”
So if someone is under an obligation to do something bimonthly, they need only do it once every two months, but if they’re under an obligation to do it biannually, they have to do it twice a year? That distinction seems guaranteed to confuse drafters and their clients. Nevertheless, a quick survey of contracts filed on the SEC’s EDGAR system suggests that the prefixes bi- and semi- are used quite often.
You’d be better off using instead twice a week/month/year and every two weeks/months/years.