 
     public override init(initialData: BSInitialData) {
         super.init(initialData: initialData)
-        if let billingDetails = initialData.billingDetails {
+        
+        if let shopper = BSApiManager.returningShopperData {
+            self.billingDetails = BSBillingAddressDetails(email: shopper.email, name: shopper.name, address: shopper.address, city: shopper.city, zip: shopper.zip, country: shopper.countryCode, state: shopper.stateCode)
+        } else if let billingDetails = initialData.billingDetails {
             self.billingDetails = billingDetails.copy() as! BSBillingAddressDetails
         }
-        if let shippingDetails = initialData.shippingDetails {
+        if let shippingDetails = BSApiManager.returningShopperData?.shippingDetails {
+            self.shippingDetails = shippingDetails.copy() as? BSShippingAddressDetails
+            self.shippingDetails?.phone = BSApiManager.returningShopperData?.phone
+        } else if let shippingDetails = initialData.shippingDetails {
             self.shippingDetails = shippingDetails.copy() as? BSShippingAddressDetails
         }
     }

/**
 (PCI-compliant) CC details: result of submitting the CC details to BlueSnap server
 */
@objc public class BSCcDetails : NSObject, NSCopying {
    
    // these fields are output - result of submitting the CC details to BlueSnap server

    }
}

// todo: change to creditCardInfo
@objc public class BSExistingCcDetails: BSCcDetails {
    
    var billingDetails: BSBillingAddressDetails?
