You could clone the form webpart and then insert an
onBeforeSaveEvent which would get a list of all the serial numbers(whereever they are stored) and loop through and compare your
form.BasicForm.GetFieldValue("MyField")
to the serial number field in your product table.