public function instantiateDataFromSession(AnCommandContext $context)
    {
        $data = $context->data;
        $package = $this->getItem();

        //create a dummy transaction
        $viewer = get_viewer();
        $this->order = $this->getService('repos:subscriptions.order')->getEntity()->reset();
        $this->order->setPackage($package, $viewer->hasSubscription() ? $viewer->subscription->package : null);

        $this->_instantiateCoupon($data);
        $this->_instantiateUser($data);
        $this->_instantiateCreditCard($data);
    }