Ruan Pienaar's last-gasp try gave Ulster a deserved bonus-point win over Castres in the Heineken Cup opener.
Tries from Andrew Trimble and Paul Marshall put Ulster in control before Marc Andreu touched down for Castres.
Ulster led 23-10 at the break and Marshall scored his second try as the hosts surged clear, although Marcel Garvey went over for the French side.
Last season's finalists clinched the added point in the 82nd minute when Pienaar broke clear from deep.
Ulster were forced into a late change in the back row with Mike McComish coming in for Stephen Ferris, who pulled out with a back injury.
Castres made a bright start in the Pool 4 clash and Romain Teulet fired over a fifth-minute penalty before the Pro12 leaders took a grip on affairs.
Jackson levelled with a penalty while Jared Payne set up the opening try on 13 minutes, breaking through from halfway and the full-back's pass sent Trimble over at the corner.
Jackson added the extras and the young fly-half converted a second penalty after Peirre Bernard missed a penalty for Castres.
Marshall's opportunist try came after 22 minutes, the little scrum-half spotting a gap and kicking through before touching down.
Jackson made it 20-3 but the visitors hit back, mounting a spell of sustained pressure before Bernard's pinpoint kick found the unmarked Andreu in the corner and his easy try after 33 minutes was converted by Teulet.
Ulster responded four minutes later with Jackson slotting over to give the Irish side a 13-point advantage at the break.
Marshall extended the lead three minutes after the restart, darting through and stretching to make the touch from a line-out and drive.
Jackson missed the conversion although he struck his fourth penalty before Castres scored their second try on 52 minutes.
Garvey capitalised on good work from his forwards by nipping in and touching down on the line before Teulet added the conversion.
Ireland prop Tom Court was sin-binned in the 58th minute after bringing down a Castres maul although Jackson kicked over another penalty three minutes later.
Ulster went in search of the fourth try and bonus point but they were frustrated by handling errors and solid Castres defending.
Castres prop Yannick Forestier was sinbinned with five minutes left for kicking the ball away after Ulster were awarded a penalty.
The visitors secured the bonus point in the second minute of added time.
Payne won the ball back close to the Ulster line before Luke Marshall set replacement Pienaar on his way to go clear and score a crucial try on his comeback for Ulster after international duty with South Africa.
Ulster: J Payne; T Bowe, D Cave, P Wallace, A Trimble; P Jackson, P Marshall; T Court, R Best, J Afoa; J Muller (c), D Tuohy; I Henderson, M McComish, C Henry.
Replacements: Replacements: C Gilroy for Bowe (65), L Marshall for Wallace (72), R Pienaar for P. Marshall (63), R Herring for Best (75), L Stevenson for Tuohy (63), C Black for McComish (63).
Not Used: Macklin, McComb.
Sin Bin: Court (58)
Castres: R Teulet; M Garvey, S Bai, D Kirkpatrick, M Andreu; P Bernard, T Lacrampe; Y Forestier, M Bonello, M Coetzee; M Rolland (c), R Capo Ortega; P Faasalele, Y Caballero, P Wannenburg.
Replacements: T Sanchou for Kirkpatrick (49), P Bonnefond for Bernard (63), MA Rallier for Bonello (57), H Lazar for Coetzee (49), J Tekori for Rolland (49), A Classen for Caballero (68), G Marmotion for Wannenburg (78).
Not Used: R Kockott
Sin Bin: Forestier (75)
Ref: Andrew Small (RFU)