code: public function createRequest($messageName, RequestOptionsInterface $params)
      {
          $this->checkMessageIsInWsdl($messageName);
  
          $builder = $this->findBuilderForMessage($messageName);
  
          if ($builder instanceof ConvertInterface) {
              return $builder->convert($params, $this->getActiveVersionFor($messageName));
          } else {
              throw new \RuntimeException('No builder found for message '.$messageName);
          }
      }
docs: Create a request message for a given message with a set of options.
  
  @param string $messageName the message name as named in the WSDL
  @param RequestOptionsInterface $params
  @throws Struct\InvalidArgumentException When invalid input is detected during message creation.
  @throws InvalidMessageException when trying to create a request for a message that is not in your WSDL.
  @return mixed the created request