# frozen_string_literal: true

class ThreeDSecureRepo
	class Failed < StandardError; end

	def put_from_payment_method(_customer_id, method)
		return unless method.verification # Already vaulted

		three_d = method.verification.three_d_secure_info
		if !three_d ||
		   (three_d.liability_shift_possible && !three_d.liability_shifted)
			raise Failed, method.token
		end
	end
end
