Toss together the shallots and vinegar in a large bowl. Let marinate at room temperature for 30 minutes. Add the peaches, basil, capers, and 1 tablespoon of olive oil and toss to combine. Season with salt and pepper, to taste.
Place a grill pan over medium-high heat. Drizzle the salmon with the remaining 3 tablespoons of olive oil and season with salt and pepper. Grill the salmon for 5 to 6 minutes per side, until the fish is cooked through and flakes easily. Spoon the peach salad over the salmon and serve.