The first time my car got the restraint failure code I had the dealer take a look. The knucklehead shop (Newmarket) claimed the code was from excessive moisture on the seat sensor. ah huh!
I didn't really care how silly the diagnosis was so long as the system was operational and the code was not illuminated on the nav screen.
The second time the car coded I suggested that my passenger bounce on the seat, and it worked! Obviously there is a broken wire in the sensor under the seat that is intermittently loosing contact. I'll have the stealership check it next visit but I won't let them claim the silly original diagnosis again.
Anyway. I've read the BMW seat sensors can be easily broken if you kneel on the seat while cleaning the car or just grabbing something from inside the car.