上海医保卡买药还要自费的原因如下:
1.买的药品不在医保目录范围内,无法用医保统筹基金报销、也无法用医保个人账户支付。
2.医保卡上个人账户余额不足,或医保卡只能支付一定比例。
3.在非定点药店买药,医保卡无法报销。