diff --git a/ippisite/ippidb/views.py b/ippisite/ippidb/views.py
index e4b4b049d9cc5f99848b34f08a5fb5297cc71b7e..d3c6bfb064922bdc5cc095f6d17a004d0de41dc0 100644
--- a/ippisite/ippidb/views.py
+++ b/ippisite/ippidb/views.py
@@ -2,7 +2,10 @@ import ippidb
 from django.shortcuts import render
 from django.http import HttpResponseRedirect
 from formtools.wizard.views import SessionWizardView,NamedUrlSessionWizardView
+
 from .forms import IdForm, BibliographyForm, PDBForm, ProteinForm, ProteinDomainComplexTypeForm, ProteinDomainComplexForm, PpiForm
+from .models import Protein
+from .ws import get_pdb_uniprot_mapping
 
 def index(request):
     return render(request, 'index.html')
@@ -48,6 +51,19 @@ class IppiWizard(SessionWizardView):
         if self.steps.current=='IdForm':
             form.instance.autofill()
             self.instance_dict['BibliographyForm'] = form.instance
+        elif self.steps.current=='PDBForm':
+            uniprot_ids = get_pdb_uniprot_mapping(form.cleaned_data['pdb_id'])
+            proteins = []
+            for uniprot_id in uniprot_ids:
+                try:
+                    p = Protein.objects.get(uniprot_id=uniprot_id)
+                except Protein.DoesNotExist:
+                    p = Protein()
+                    p.uniprot_id = uniprot_ids[0]
+                    p.autofill()
+                proteins.append(p)
+            #TODO replace p with proteins as the instance_dict
+            self.instance_dict['ProteinForm'] = p
         return self.get_form_step_data(form)
 
     def done(self, form_list, **kwargs):