In 1983 Australia, television repairman Ray Jenkins (Angus Sampson) and his football team celebrate the end of their season by spending the weekend in Thailand. Ray's best friend Gavin (Leigh Whannell), a small-time criminal working for local property owner/crime lord Pat Shepherd (John Noble), asks Ray to transport heroin on his return flight. Ray initially refuses, but after learning his stepfather is deeply in gambling debt, and his mother will be targeted if he does not pay up, he agrees to transport the heroin. In Thailand, while wandering through the markets, Gavin goes to pick up half a kilogram of heroin to bring back to Pat. Before he leaves, he purchases an extra half kilogram to sell on his own. At the hotel, Gavin hides the heroin in condoms and coerces Ray to swallow them.
Upon their arrival at Melbourne Airport, Ray begins to panic and is eventually detained by customs officials. Believing Ray is a drug trafficker, Australian Federal Police agents Croft (Hugo Weaving) and Paris (Ewen Leslie) arrest him. Ray's lawyer Jasmine Griffiths (Georgina Haig) tells Ray that he can only be held in a hotel room for four days.
During the four days, Ray tries to hold back his bodily functions to prevent himself from being convicted, aided by codeine, which constipates him. Gavin returns to tell Ray's mother Judy (Noni Hazlehurst) and stepfather John (Geoff Morrell) that Ray has been arrested. They plan to head to the hotel to visit him, but John has a discussion with Gavin, revealing his participation in the drug scheme to get Pat to get rid of his debts.
Paris arrives at the hotel room to find Ray being tormented by Croft and a police guard. He kicks them out of the room, comforts Ray, and gives him more codeine.
Gavin hides from Pat but is found and beaten savagely for botching the heroin transport. Pat tells Gavin that Ray must be killed to prevent him from giving information to the police. Gavin heads to the hotel, where he persuades the guard to let him visit Ray, whom he intends to stab, but finds he cannot bring himself to do so. He is caught by Paris, who follows him to the rooftop. Paris reveals himself to be a cop out to make money from drugs, while Gavin explains the whole situation. Paris pushes Gavin from the rooftop. Gavin hits the car of Ziggy, Pat's Lithuanian guard, and dies on impact. Ziggy dumps Gavin's body by the side of the road and leaves town.
Having witnessed Gavin falling off the building, Ray realizes that Paris is corrupt. He tries to tell Croft, but Croft doesn't believe it.
Croft goes to the judge and extends the sentence to ten days, despite Jasmine's pleas. She visits Ray and tells him that if he is ever released, he should testify against Croft and Paris for holding him against his will and their cruel behavior. She has reported the extended detention to a newspaper, but the newspaper is busy reporting the 1983 America's Cup race.
After Pat steals his car, John drunkenly admits to Judy his part in the scheme, and she kicks him out. John heads to Pat's bar, where he threatens to expose him to the police. Pat has John strangled by his Thai chef, Phuk.
In the middle of the night, Ray is unable to stop himself from defecating in his bed. After making sure the guard is asleep, Ray ingests the condoms again, gagging profusely and trying not to vomit, before the guard wakes.
Still insisting that Ray is hiding the drugs, Croft goes to the judge and finally extends the sentence to the maximum of 14 days. On the 12th night, Ray puts his plan into action. He excretes one of the condoms and places some of the heroin in the beer of the police officer guarding him, putting him to sleep. He then excretes the rest of the condoms, and using a coin taken from the police officer's wallet, starts to unscrew the back panel of the television.
Pat sings at Gavin's funeral. Judy, fearful for Ray's health, attempts to force-feed Ray his favourite meal cooked with heavy laxatives. Ray refuses to eat it, and the police have to pull his mother away from him. The police eat the meal and are struck with intense diarrhea.
On the last night, the police officers are trying to watch the 1983 America's Cup, but the television is displaying static, so they call reception to have it repaired. On the morning of the last day, Paris furiously attempts to make Ray finally go to the toilet, but Paris discovers there are no drugs in his stomach contents. He attacks Ray, but Croft and another officer arrive before Paris can force Ray to swallow glass. An ambulance is called, and Ray hands Croft a photograph of Pat. A furious Paris trashes the hotel room looking for the drugs and finds a hidden microphone in a flower vase. Paris realizes his threats and confession to Ray have been recorded, revealing his corruption, and Croft enters the room and arrests him while berating him, admitting that he bent the rules, but Paris broke them by killing Gavin. Croft has also sent police to arrest Pat, but the Thai heroin boss instructs Phuk not to permit the police to take Pat alive, and he is beaten to death as the police arrive. At the television repair shop where he works, Ray smiles as he looks at the televisions in the window where he hid the heroin.
On the review aggregator website Rotten Tomatoes, the film has an approval rating of 87% based on 31 reviews, with an average rating of 6.54/10. The website's critics consensus reads: "Smarter than its scatological premise might suggest, The Mule offers solidly explosive laughs for fans of dark comedy."[2] It has a score of 57 out of 100 on Metacritic, based on six reviews citing "mixed or average reviews".[3]
IGN awarded it a score of 8.5 out of 10, saying, "Less black comedy and more brown drama, The Mule goes to some seriously dark places but is still full of laughs."[4]