diff --git a/gso/workflows/l2_circuit/create_layer_2_circuit.py b/gso/workflows/l2_circuit/create_layer_2_circuit.py
index 27de16e4ec639eafee27a590db630c93618e47a0..f376ba66eca8267169098137ea5ba84031f76d9f 100644
--- a/gso/workflows/l2_circuit/create_layer_2_circuit.py
+++ b/gso/workflows/l2_circuit/create_layer_2_circuit.py
@@ -17,7 +17,7 @@ from pydantic_forms.validators import Divider, Label, ReadOnlyField
 from gso.products.product_blocks.layer_2_circuit import Layer2CircuitSideBlockInactive, Layer2CircuitType
 from gso.products.product_blocks.service_binding_port import ServiceBindingPortInactive
 from gso.products.product_types.edge_port import EdgePort
-from gso.products.product_types.layer_2_circuit import Layer2CircuitInactive
+from gso.products.product_types.layer_2_circuit import Layer2Circuit, Layer2CircuitInactive
 from gso.utils.helpers import active_edge_port_selector, generate_unique_vc_id, partner_choice
 from gso.utils.shared_enums import SBPType
 from gso.utils.types.interfaces import BandwidthString
@@ -73,22 +73,6 @@ def initial_input_generator(product_name: str) -> FormGenerator:
         side_divider: Divider = Field(None, exclude=True)
         layer_2_circuit_side_b: Layer2CircuitSideSelection
 
-        def __init__(self, **data: Any):
-            """Initialize fields based on user input conditions."""
-            super().__init__(**data)
-            if initial_user_input.layer_2_circuit_type == Layer2CircuitType.TAGGED:
-                self.vlan_range_label = Field("Please set a VLAN range, bounds including.", exclude=True)
-                self.vlan_range_lower_bound = VLAN_ID()
-                self.vlan_range_upper_bound = VLAN_ID()
-            else:
-                self.vlan_range_lower_bound = ReadOnlyField(None, default_type=int)
-                self.vlan_range_upper_bound = ReadOnlyField(None, default_type=int)
-
-            if initial_user_input.policer_enabled:
-                self.policer_bandwidth = BandwidthString()
-            else:
-                self.policer_bandwidth = ReadOnlyField(None, default_type=int)
-
     layer_2_circuit_input = yield Layer2CircuitServiceSidesPage
 
     return {"product_name": product_name} | initial_user_input.model_dump() | layer_2_circuit_input.model_dump()
@@ -130,6 +114,8 @@ def initialize_subscription(
     subscription.layer_2_circuit.policer_enabled = policer_enabled
     subscription.layer_2_circuit.bandwidth = policer_bandwidth
 
+    subscription = Layer2Circuit.from_other_lifecycle(subscription, SubscriptionLifecycle.PROVISIONING)
+
     return {"subscription": subscription}
 
 
@@ -145,7 +131,7 @@ def create_layer_2_circuit() -> StepList:
         >> create_subscription
         >> store_process_subscription(Target.CREATE)
         >> initialize_subscription
-        >> set_status(SubscriptionLifecycle.PROVISIONING)
+        >> set_status(SubscriptionLifecycle.ACTIVE)
         >> resync
         >> done
     )