Raphael Fernández is a “trash boy”: he’s 14 years old and he lives in a shanty on a giant landfill called Behala, spending his days collecting trash to sell for food. Raphael works with his best friend, Gardo, who looks after him. Behala’s residents mostly collect plastic, clean paper, and rags to sell by the kilogram. Since not many people in their city have toilets, human feces—or, stupp—ends up wrapped in paper and thrown in the trash, which is what most of Behala’s residents spend their days wading in as they dig out garbage with their feet or hooks that they fashion out of metal.
Raphael reflects on the day everything changed: it starts when Raphael finds a bag. Inside the bag is 1,100 pesos, a map, a key labeled 101, and identification for a 33-year-old man named José Angelico who worked as a servant in a rich part of town called Green Hills. Raphael splits the money with Gardo and he pockets the bag. That evening, the police showed up at Behala (which rarely happens)—they’re looking for the bag. Raphael’s auntie foolishly tells them that Raphael found something, so Raphael lies, saying that he found a shoe. Knowing that they could get in trouble for lying, Raphael and Gardo decide to hide the bag with a boy nicknamed Rat (whose real name is Jun-Jun, though people sometimes call him Jun). Rat, who is about 11 years old, lives by himself in a wet trash hole full of rats. Rat agrees to hide the bag and he recognizes the key: it’s for a locker in Central Station. The next day, the three boys go to the station and they retrieve an envelope from the locker: it contains a cryptic letter addressed to a Gabriel Olondriz at Colva Prison and a slip of paper with numbers, dots, and slashes on it. The boys realize they are getting mixed up in something important.
Father Juilliard, a 63-year-old man who runs the Pascal Aguila Mission School in Behala, is collating all the accounts of the boys’ story. One day, Father Juilliard is at the school when Rat, Raphael, and Gardo come in (with feet black to their knees and a smell that fills the room) asking to use the computer to research information for a newspaper quiz. Father Juilliard lets them through and he fetches some sandwiches for them. He doesn’t know then that the boys are looking up José Angelico. When the boys are done, they run off, and Juilliard never sees them again.
The police return to Behala that night and they raid Raphael’s home, arresting a terrified, hysterical Raphael and dragging him into an interrogation room. A detective (referred to as the “tired man”) repeatedly asks Raphael about the bag as Raphael is knocked to the floor, dangled out of a window, and choked. Still petrified, Raphael lies that he doesn’t know anything about a bag—he only found some money in an electricity bill. The tired man threatens to break Raphael’s bones and leave him on the train tracks, but Raphael sticks to his story. Eventually, the tired man gives up and the police throw Raphael out of the station. Raphael walks three hours home, bleeding and battered, but alive—unlike poor José Angelico, who was killed in an interrogation room. Raphael explains that José Angelico was adopted—along with 33 other street kids—by a man named Dante Jerome, son of Gabriel Olondriz. José Angelico also had a young daughter and no other living family, which is why he was writing to Gabriel Olondriz. A maid named Grace—who worked for the vice-president Senator Zapanta along with José Angelico—briefly narrates to say that José Angelico was a kind man who worked hard to send his little daughter, Pia Dante, away to school, where she boarded with a local family.
Olivia, the 22-year-old volunteer at the Mission School, narrates the next part: Rat comes to her explaining that Gardo needs to see his grandfather in Colva Prison. Reluctantly, Olivia agrees to take Gardo there. As she walks through the prison—which is a stifling warehouse stacked high with cages full of people, including little children—Olivia feels terrified, faint, and distraught. They pass through to the hospital wing and a frail old man—Gabriel Olondriz—walks towards them. Olivia realizes that Rat and Gardo lied to her in order to deliver Angelico’s letter to Olondriz. Olondriz explains that he’s a political prisoner. Decades ago, he tried to expose Senator Zapanta for corruption (because Zapanta had “spirited away” $30,000,000 of aid money intended for the poor) and Olondriz has been in prison ever since. When Gardo asks Olondriz about the letter—which mentions Zapanta and the phrase “it is accomplished”—Olondriz becomes very excited.
While Gardo is at Colva Prison, Rat and Raphael go to scope out Zapanta’s compound, using Rat’s life savings (which he’s been accumulating to afford passage home to an island called Sampalo, where he hoped to become a fisherman). An old gardener spots the boys in the compound and he explains that José Angelico stole $6,000,000 from Zapanta’s private vault by sneaking it out in an old fridge. The gardener is happy about this because he hates the corrupt and miserly Zapanta.
Back at the prison, Gardo recites Angelico’s letter from memory to Olondriz. Olondriz explains that it’s coded and he asks a guard named Marco for his Bible. Marco agrees to pass on the Bible later. The next day, Olondriz dies peacefully in prison, and Olivia is arrested. Olivia’s father enlists the help of a man from the British Embassy who manages to get Olivia released, and she flies out of the country as soon as she’s let go. Olivia never sees the boys again, though her heart is still with them.
The police are now swarming Behala, so the boys flee to the city where they rent a tiny room the size of a coffin with the rest of Rat’s money. Rat loosens a ceiling plank leading to the roof, in case they needed a hasty escape. Gardo returns to the prison, but Marco wants 20,000 pesos for the Bible. Rat is ashamed about what he does to get this money: he sneaks back into Behala and takes it from Father Juilliard’s safe (though he leaves a note with his name, the only word he knew how to write). Rat has been lifting cash from the safe for a while, which is how he managed to save a bit in the first place, but he’s never taken that much before. The next day, Gardo meets Marco at a tea-house to retrieve the Bible. After the exchange, Marco tries to grab Gardo and he yells for backup, but Gardo gets away by slashing Marco’s eye with his hook.
That night, the boys try to decode the Bible by candlelight. It takes them all night, and Raphael thinks that José Angelico and Gabriel Olondriz’s spirits are there with them. They crack the code at dawn and they realize they need to go to the graveyard to look for “the brightest light” that Angelico references in his coded message. Just then, Rat hears a creak outside. Thinking quickly, Rat leads the boys out through the ceiling plank and across the rooftops into a building full of street kids. Rat’s quick thinking saves the boys’ lives—the police are in hot pursuit. The police lose the boys when they flee with the street kids, running in all directions.
Frederico Gonz, who carves gravestones, steps in to say he was very sad when José Angelico asked him for a gravestone for his little daughter with the words “it is accomplished” on it. Some newspaper headlines say that the search for Zapanta’s missing fortune continues, as do trials suspecting foul play in Zapanta’s bankrupt company, “Feed Us!” Other headlines accuse Zapanta of corruption for having so much money in his vault in the first place, and some even call for a revolution to depose him.
The graveyard is crowded because it’s the Day of the Dead, and the whole city has descended there to feast among their dead relatives. The boys search for Angelico’s family grave for hours, eventually bribing a guard for its location. When they can’t find it, Gardo climbs atop a marble angel and he sees thousands of candles burning brightly on the other side of the graveyard, where the poor people’s graves are. Realizing they’ve been looking in the wrong place, the boys go over to the other side—where people live in shanties next to dug-up graves—and they eventually find the Angelico plot, where coffins for José Angelico’s wife and son are stacked above ground. On top is a grave for his daughter, Pia Dante, which makes the boys very sad. As they look around the graves for a clue, a little girl asks what they’re doing. She says her name is Pia Dante, and Raphael turns as white as a sheet, thinking Pia is a ghost.
It turns out that Pia’s foster family took her to the graveyard to meet her father and they abandoned her there when Angelico never showed up. Pia only survived because some street kids from the graveyard shanties fed her scraps of food. The boys go to get some food for Pia, who looks weak. She starts to get feverish as she eats, but Rat mashes up a banana and feeds it to her slowly, saving her life. They lay Pia down in the back of a shack and they head back to the grave: sure enough, Pia’s coffin is full of cash. Raphael says the money looks like food and drink, a new life, and freedom from the stink. The boys know they aren’t going to keep it all because it doesn’t belong to them. They also know they can’t take the money to a bank or any officials, as it would just be seized and end up right back in Zapanta’s hands. Suddenly, Rat has an idea: he suggests they dump it in Behala for the other “trash kids” to find.
The boys and Pia sneak back into Behala in the dead of night with the money in a couple of sacks. First, Rat goes to the Mission School and he puts some money in Father Juilliard’s safe, leaving another note with his name scrawled on it. Rat rifles through the cupboards and he finds a few donated backpacks and school uniforms. Rat, Gardo, Raphael, and Pia stuff four backpacks with money and they unfurl the rest into the growing typhoon wind, which whips up the money and spreads it far and wide across the dump. They also discover another letter from José Angelico. Rat wishes he could stay to watch the trash kids dig around for plastic and discover $100 bills instead.
In the last chapter—collectively narrated by Raphael, Gardo, Rat, and Pia—the four of them sneak onto a train wearing the donated school uniforms (blending in with other school kids) and they ride nine hours to Sampalo. They since learned to fish, bought fishing boats, and they plan to live out the rest of their days happy and clean on the beach.
An Appendix shows José Angelico’s second letter, in which he explains how he meticulously crafted his plan to steal Zapanta’s money after Olondriz was jailed. He implores the person who finds the money to remember that it belongs to the poor and that it should be returned to them.