South Africa were dominant in the two recent Tests between the sides and will be hoping to display similar control in the three-match one-day series.
All-rounder Shakib is back to strengthen the tourists having asked to be rested for the Test series and while he top-scored with 68, he was unable to prevent Bangladesh from falling to a six-wicket defeat to an invitational XI, in Bloemfontein, on Thursday.
De Villiers was part of that XI, as was JP Duminy, who is also back in contention for the Proteas, but Faf du Plessis will lead the lead in Kimberley having replaced De Villiers as captain.
South Africa: Faf du Plessis (capt), Hashim Amla, Temba Bavuma, Farhaan Behardien, Quinton de Kock (wk), AB de Villiers, JP Duminy, Imran Tahir, David Miller, Wayne Parnell, Dane Paterson, Andile Phehlukwayo, Dwaine Pretorius, Kagiso Rabada
Coach: Ottis Gibson (WIS)
Bangladesh: Mashrafe Mortaza (capt), Imrul Kayes, Liton Das (wk), Mahmudullah, Mehidy Hasan, Mohammad Saifuddin, Mominul Haque, Mushfiqur Rahim (wkt), Mustafizur Rahman, Nasir Hossain, Rubel Hossain, Sabbir Rahman, Shakib Al Hasan, Soumya Sarkar, Tamim Iqbal, Taskin Ahmed.
Coach: Chandika Hathurusingha (SRI)
Oct 15: Kimberley; Oct 18: Paarl; Oct 22: East London