Before buying a replacement, a few quick checks can tell you whether the battery is really dead or something cheaper is at fault:
Try a different Surface power supply, and reseat the Surface Connect cable, flipping the connector. Check the charging port for lint or bent pins. Surface Pro 7 and later can also charge over USB-C.
Do a forced shutdown (hold power for about 20 seconds), then a two-button shutdown and restart (hold Power + Volume Up for 15 seconds). Then install pending Surface firmware updates.
Run powercfg /batteryreport in an admin command prompt. If the full-charge capacity is far below design capacity, the battery is worn out. If the device shows “plugged in, not charging” with healthy capacity, suspect the charger, port or firmware.
Whichever seller you pick, I’d check these before paying:
Warranty length, and whether it covers the battery specifically.
A written battery health or cycle count.
Whether a charger is included.
A return window of at least 7 days.
A genuine Windows license.