use SOAP::Lite +trace => 'all', debug => 'all'; my $security_key = 'TEST'; my $soap_uri = 'TEST'; my $web_service = 'https://www.yahoo.com'; my $update_user_func = 'TEST'; my $soap = SOAP::Lite ->uri($soap_uri) ->on_action( sub { join('/', $soap_uri, $_[1]) } ) ->proxy($web_service); my $method = SOAP::Data->name($update_user_func) -> attr({xmlns => $soap_uri }); my @params = ( SOAP::Data->name(SecurityKey => $security_key) ); my $som = $soap->call($method => @params); exit;