北宋大名(今属河北)人。太宗时为供奉官。太平兴国六年(公元981年)赴高昌回鹘(在今新疆吐鲁番一带),雍熙二年(985年)偕回鹘等族使者百余人回宋。著《西州程记》,叙述旅途见闻和高昌的风土人情、生产情况等。历官枢密都承旨、度支使,出知青州等。后坐事降官,因病致仕。