+
+ my @cust_location = $self->cust_location;
+ #the interface only allows one, so we're just gonna go with that for now
+
+ my @contact = map $_->contact, $self->prospect_contact;
+
+ #XXX i'm not compatible with cust_main-require_phone (which is kind of a
+ # pre-contact thing anyway)
+
+ my $cust_main = new FS::cust_main {
+ 'bill_location' => $cust_location[0],
+ 'ship_location' => $cust_location[0],
+ ( map { $_ => $self->$_ } qw( agentnum refnum company taxstatusnum ) ),
+ };
+
+ $cust_main->refnum( FS::Conf->new->config('referraldefault') || 1 )
+ unless $cust_main->refnum;
+
+ #XXX again, arbitrary, if one contact was "billing", that would be better
+ if ( $contact[0] ) {
+ $cust_main->set($_, $contact[0]->get($_)) foreach qw( first last );
+ } else {
+ $cust_main->set('first', 'Unknown');
+ $cust_main->set('last', 'Unknown');
+ }
+
+ #v3 payby no longer allowed
+ #$cust_main->payby('BILL');
+ #$cust_main->paydate('12/2037');
+
+ $cust_main->insert( {},
+ 'prospectnum' => $self->prospectnum,
+ )
+ or $cust_main;