I use Context for letterheads, putting the text in two layers above a PDF letterhead that I had a graphic designer put together for me. A simplified, commented version of the start of one of my documents goes as follows:
\input{client-details} % I keep information about clients and jobs in separate
\input{job-details} % files, so that, e.g., the contents of the invoice
\def\DATE{17th November 2010} % matches what the contract said.
\noheaderandfooterlines
\definelayer[fullpage][position=no]
\definelayer[datestamp][x=143mm,y=81mm,height=2em,width=18em]
\starttext
\setlayer[fullpage][x=0pt,y=0pt]{%
\externalfigure[letterhead-v3-A4.pdf][width=\paperwidth,height=\paperheight]
}
\setlayer[datestamp][hoffset=0mm,voffset=0mm]{\DATE}
% datestamp layer allows exact placement of text on page independent of other layer
\setupbackgrounds[page][background={fullpage,datestamp}]
\vbox to 16mm{~}
\getbuffer[CLIENTADDRESS] % \startbuffer[CLIENTADDRESS] is defined in client-details file
Dear \CLIENT,
...
This is not really all that idiomatic (I use Plain Texisms where Context has its own abstractions, e.g., for handling variables like \CLIENT and \DATE) nor elegant - I'm sure I can clean up the way I place the date. There more you can do with layers: you can have a letterhead on the front page, and a PDF background for the second and subsequent pages. This is enoughn to get started with, though.
There's nothing all that fancy in the above: I think everything is documented in (i) Context, An Excursion (see Context documentation (ii) and on the Context wiki's layers page.