A few steps here:
Get a customs broker. We use either UPS supply chain solutions, or Russal Farrow. They are located at all the border crossings, so if you know which crossing your goods are using contact them and set up an account. We charge our clients "brokerage" on all our goods because we clear everything, and all they have to do is unload at destination. I've found that this is preferable to having your American counterparts clear it, because they usually don't have a clue how.
You will need to provide a commercial invoice and a packing list (bill of lading) to your customs broker so they can clear it on your behalf. Your invoice will have to show final destination, pricing, as well as the IRS# of the company you are sending it to.
You will need to determine the HS code (harmonized system code) of the goods that you are exporting. HS codes are a universal coding system that governments worldwide use to determine if duties are applicable to goods coming into their countries. You can look up your HS code at
http://www.statcan.ca/english/tradedata/cec/index.htm as well as learn more about documentation, etc.
I would suggest you find out if your goods fall under NAFTA or not. If they do, you won't have to pay duty but you will need to provide a certificate of origin showing that they are Canadian made. Canadian made goods can have foreign content (ie fabric imported from China, but sewn in Canada) and still fall under NAFTA, but content allowances will vary depending on the product. If your product doesn't qualify under NAFTA you don't need a certificate of origin, but you will need to mark country of origin (eg made in China) on your bill of lading.
My advise would be to toss together a shipment, and do a trial run. Your broker will help you through the process and after you do it once or twice you'll more or less figure it out. It sounds complicated, but it really isn't that bad.