public function addParam($param, $value) {

    if (!$this->requestMethod->hasParam($param)) {
      throw new GiroCheckout_SDK_Exception_helper('Failure: param "' . $param . '" not valid or misspelled. Please check API Params List.');
    }

    if ($value instanceof GiroCheckout_SDK_Request_Cart) {
      $this->params[$param] = $value->getAllItems();
    }
    else {
      $this->params[$param] = $value;
    }

    return $this;
  }