Integration with Civicrm has been a feature that really put aside. So I am creating this issue to collaborate with everyone so that we can get this started.
I want to create a ubercart civicrm module. This module integrates ubercart into civicrm.
Some of the features that could start with are as follows:
- Delivery Address and Billing address integration. Storing this information in civicrm instead of ubercarts system. This would integrate with order processing, taxes, and shipping modules. So all address related modules would be accessing civicrm address information to show a customers address.
I basically need to know how to save the address information in civicrm rather than in ubercart. I would like some advice on where I need to start and which functions I need to use to do this within ubercart's api.
Within Ubercart, you're actually going to need to define a set of checkout and order panes to handle pulling addresses from a remote location. Unfortunately, the panes I have right now are limited to using addresses stored in the database. Flexibility in this area would be a good goal for Ubercart 2.0 whenever that comes around. 
However, if you were to copy the billing/delivery address panes for checkout and orders, you can easily change them to save/load data from a remote storage location on those forms (like the CiviCRM database). Then, you can use hook_order() to load/save the data to the remote location whenever an order is being loaded.
Hope that's a good point in the right direction. 
I'd love to see an integration like this get coded.
Is there a way to overide a default pane with an api call such as hook_checkout_pane or hook_order_pane. I specifically want to override the address checkout pane and address order pane. Is this possible and if not could it be possible.
I think this would be a clean way for contributors to change and customize this hard coded part of ubercart. This would enable me to create a module that overrides those panes and saves the info in civicrm per say. Then I could include the module in my ubercart install.
Then I would call hook_order and load my civicrm data in every time a order is being processed.
Yep, the easiest thing to do would be to just define new panes for those areas and then disable the default delivery and billing information panes at admin/store/settings/checkout/edit/panes. So, you can't exactly override an existing one, but you can very easily copy it to a new one and modify it to your liking.
I am actually looking at this and may try to tackle it since my site is using civicrm. What I am thinking of doing, is looking at how the current address sections work and have the module do the same as choosing an existing address from the ubercart database. I am not sure how this will go since civicrm is a rather large module and may not always be a part of the drupal database. But lets see where it goes.
