Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Programmatically set default billing/shipping address of customers if they are not set in magento
<?php
require_once ("app/Mage.php");
umask(0);
Mage::app("default");
$collection = Mage::getModel('customer/customer')->getCollection()->addAttributeToSelect('*');
foreach ($collection as $customer) {
$customerObj = Mage::getModel('customer/customer')->load( $customer->getId() );
if ( ! $customerObj->getDefaultBillingAddress() ) {
foreach ($customerObj->getAddresses() as $address) {
$address->setIsDefaultBilling(true);
continue; // we only want to set first address of the customer as default billing address
}
}
if ( ! $customerObj->getDefaultShippingAddress() ) {
foreach ($customerObj->getAddresses() as $address) {
$address->setIsDefaultShipping(true);
continue; // we only want to set first address of the customer as default shipping address
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment