The correct answer is B. A contract whereby seller transfers or agrees to transfer the property in goods to the buyer for a price.
The Sale of Goods Act, 1930 defines a sale as “an agreement to transfer the property in goods for a price”. This means that a sale is a contract in which the seller agrees to transfer ownership of goods to the buyer in exchange for a price. The goods must be specific and identifiable, and the price must be certain or capable of being made certain.
Option A is incorrect because it does not require that the seller transfer ownership of the goods. Option C is incorrect because it does not require that the transfer of ownership take place immediately. Option D is incorrect because it does not require that the transfer of ownership be for a price.