def METHOD_NAME(self, value):
    if value not in PaymentMethod.PaymentProcessors.as_list():
        raise serializers.ValidationError('"{}" is not a valid '
                                          'choice'.format(value))
    if self.instance and value != self.instance.payment_processor:
        message = "This field may not be modified."
        raise serializers.ValidationError(message)
    return value