The earliest you can book is 15 days in advance, but this can vary by route and bus operator. The latest you can book is 20 minutes before departure.