my $uri = "http://service/uri" ; my $proxy = "https://service.provider.address/Service/service.asmx?WSDL" ; my $service = SOAP::Lite ->uri($uri) ->proxy($proxy) ->autotype(0) ->outputxml(1) ->on_action( sub { join '/', @_ } ) ; my $response = $service->MethodName( SOAP::Header ->name( 'AuthHeader' ) ->value( { header1 => $header_1, header2 => $header_2 } ), SOAP::Data ->name( 'NamedParam1' ) ->type( 'string' ) ->value( $named_param_1 ), SOAP::Data ->name( 'NamedParam2' ) ->type( 'string' ) ->value( $named_param_2 ) ) ; print "RESPONSE: $response\n" ;