After left-back Erik Pieters had put the Potters ahead against the recently relegated Spanish side, the 23-year-old ended the first half with a flourish, finding the net for the third time in as many appearances with a thunderous strike from the edge of the area.
Betis hit the woodwork twice in the second period but got no further as the hosts recorded their first victory in pre-season at the sixth attempt.
In addition to Bojan, fellow new signings Phil Bardsley and Mame Biram Diouf also started, with Mark Hughes fielding a strong XI that could yet take the field in Stoke's Premier League opener against Aston Villa on August 16.
Betis forward Nono tested Asmir Begovic inside the first minute but Stoke soon settled and saw both Bojan and Diouf threaten prior to Pieters opening the scoring on the half-hour. Following neat build-up play involving Bojan, the ball was worked to Bardsley on the right and his low cross was turned home by his fellow full-back at the far post.
Vincenzo Rennella came close to an equaliser within four minutes, dragging a shot narrowly wide, before Bojan took centre stage on the stroke of the interval. The former Barca man picked up a loose ball and beat a Betis player before letting fly with a venomous strike into the top corner.
Ruben Castro should have halved the visitors' deficit nine minutes after the break but fired wildly over having been left free inside the box.
Bojan and Peter Odemwingie, who was introduced at the start of the second half together with Steve Sidwell and Geoff Cameron, then came close to extending Stoke's advantage before Betis struck the post twice in quick succession through Jorge Molina and Cedric Mabwati.
Molina saw another opportunity go begging amid a predictable raft of substitutions, while Bojan was afforded a standing ovation when he came off in the closing stages.