Дело в том, что служба Яндекс такси проверяет наличие денег на карте у клиента, сразу в момент начала поездки, осуществляется это для того, чтобы у водителя и сервиса была гарантия в том, что деньги есть, обычно это происходит так.
На карту клиента, а точнее в банк, который обслуживает его карту отправляется запрос на холд определенной суммы, это либо минимальная стоимость поездки или полная.
При этом деньги не списываются, а лишь блокируются на карте.
При отмене же поездки, этот холд должен быть отменен по сути.
Но тут другая ситуация,либо операцию на отмену холда Яндекс забывает отправлять, либо происходит некий сбой и банк, который обслуживает вашу карту эти операции не принимает вовремя, поэтому вам и кажется что деньги списаны, хотя по факту они в холде и эта блокировка денег обычно автоматически отменяется в течение недели.
В этом и заключается судя по всему ваша проблема, а корень со стороны банка, или со стороны Яндекс такси.