If using a charcoal grill, place a 9-by-13-inch disposable aluminum pan in the center of the bottom rack. Light briquettes in a charcoal chimney. When covered with ash, pour into the grill around (not in) the pan; add the top rack. If using a gas grill, place the aluminum pan under the top rack on one side. Heat the side without the pan to medium-high; leave the burner under the pan off.
Pour out half a can of citrus soda, such as Sanpellegrino Limonata. Using a peeler, remove a 2-inch long, 1/2-inch-wide strip of zest from the grapefruit, orange, lemon and lime; add to can. Grate remaining zest from all fruit into a bowl. Mix in butter, grated shallot and sugar; season. Rub butter mixture under and over skin of the chicken. Season with salt and pepper.
Push the chicken, legs down, over the can. Thread a toothpick through the skin to close the neck opening; this will trap the flavorful steam that comes out of the can as the chicken cooks. Place the chicken on the rack over the aluminum drip pan, using the can and the legs to prop it up.
Cover and grill, rotating halfway through cooking, until an instantread thermometer inserted into the thickest part of the breast registers 160 degrees , about 1 hour.
Transfer the chicken and can to a cutting board; let rest 10 minutes. Using oven mitts (silicone ones work great), steady the chicken with one mitt, and carefully twist the can with the other mitt to release.