A 20-year-old woman is due to appear in a South African court for allegedly trying to sell her child for 5,000 rand ($380; £250) on advertising website Gumtree.
She is expected to be charged with human trafficking when she appears in the Pietermaritzburg magistrates court.
The woman was arrested after a police agent posed as a buyer, a police spokesman told the BBC.
The 19-month-old boy has been handed over to social workers.
“Someone alerted us to the advert. We made contact with the young lady and met with her undercover on Tuesday,” Brigadier Hangwani Mulaudzi said.
“We had told her that we would make the cash transaction she asked for. We arrested her as soon as we met with her,” he said.