Bangladesh Test captain Shakib Al Hasan has been given a two-year ban for "failing to report corrupt approaches".
The 32-year-old accepted three charges relating to requests for "inside information for betting purposes".
The approaches came during an international tri-series also involving Sri Lanka and Zimbabwe in January 2018, and that year's Indian Premier League.
Shakib is the top all-rounder in the one-day international rankings and has played 338 matches for Bangladesh.
He was the third-highest run-scorer in the 2019 Cricket World Cup and hit two hundreds, including against England in Cardiff in the group stage.
One year of Shakib's ban is suspended and he will be able to return to the sport on 29 October 2020.
"Those who have supported me over the years I hope they, the fans, Bangladesh Cricket Board, the government, the journalists will continue to support me in my bad and good time," said Shakib after his ban was announced.
"If you continue your support, I am hopeful I will come back to cricket soon. I will be stronger and will perform my responsibilities with more sincerity."
Shakib told the anti-corruption unit of the International Cricket Council (ICC) he "did not act upon", "provide any information" or "receive any money or other reward" for the approaches.
He has been punished for failing to disclose "full details of any approaches or invitations received to engage in corrupt conduct", a statement from the governing body said.
"I am obviously extremely sad to have been banned from the game I love, but I completely accept my sanction for not reporting the approaches," said Shakib, who is also Bangladesh's Twenty20 captain.
Alex Marshall, the general manager of the ICC's anti-corruption unit, said: "Shakib Al Hasan is a highly experienced international cricketer. He has attended many education sessions and knows his obligations under the code.
"He should have reported each of these approaches."
Last week, Shakib led a strike by Bangladesh's players which was soon called off after the Bangladesh Cricket Board agreed to most of their demands for better pay and improved facilities.
He has been replaced as Test captain by Mominul Haque and as T20 skipper by Mahmudullah.
Why has Shakib been banned?
The ICC has published a list of written reasons behind its decision to ban Shakib following interviews the all-rounder had with the ICC's anti-corruption unit on 23 January 2019 and 27 August 2019. These include:
- Shakib admitted he was aware his phone number had been given to Deepak Aggarwal. Aggarwal is "an individual known to the ACU and suspected of involvement in corruption in cricket", the ICC said.
- In November 2017, Shakib exchanged various WhatsApp messages with Aggarwal, in which Aggarwal attempted arrange a meeting.
- In January 2018, during the tri-series against Zimbabwe and Sri Lanka, Shakib engaged in further WhatsApp conversations with Aggarwal.
- On 19 January 2018, following a match in the tri-series that day, Aggarwal sent Shakib a message saying "do we work in this or I wait til the IPL". The ICC says "work" was a reference to Shakib providing inside information.
- Shakib did not report this contact to the ICC.
- On 23 January 2018, Shakib received another message from Aggarwal which said "Bro anything in this series?"
- Shakib did not report this message and admitted this related to Aggarwal's request to provide inside information from the ongoing tri-series.
- On 26 April 2018, during the IPL where Shakib played for Sunrisers Hyderabad, he received a WhatsApp message from Aggarwal asking him whether a particular player was going to be playing in the game that day.
- Aggarwal continued this conversation by talking about bitcoins, dollar accounts and asked Shakib for his dollar account details. During this conversation, Shakib told Mr Aggarwal he wanted to meet him "first".
- Of the messages received on 26 April 2018, the ICC found a number had been deleted. Shakib confirmed these deleted messages contained requests for inside information.
- Shakib said he felt Aggarwal was "dodgy" and he had a feeling he was a "bookie".
- Shakib did not report the approaches on 26 April 2018.
Local media give top coverage to Shakib's ban
by Upasana Bhat, BBC Monitoring
Shakib's ban is the top story on leading Bangladesh news websites but they are also prominently reporting the prime minister's comments expressing support for the cricketer for realising his "mistake".
Many websites have reported Prime Minister Sheikh Hasina's remarks - made ahead of the announcement of the ban - at a media briefing in Dhaka on 29 October while responding to reporters' queries.
"It's clear that Shakib has made a mistake and he's realised that," Hasina said.
Leading newspaper The Daily Star also reported Hasina's remarks that the country's cricket board would back him.
"It's right that he made the mistake and he realised it. Yet, the BCB will be with him (Shakib)," she said.