juspay/hyperswitch · error · ApiErrorResponse::InternalServerError

Imerchantsolutions requires HeaderKey auth type

Error message

Imerchantsolutions requires HeaderKey auth type

What it means

Error "Imerchantsolutions requires HeaderKey auth type" thrown in juspay/hyperswitch.

Source

Thrown at crates/router/src/core/unified_connector_service/connector_config.rs:1790

                    key_id: key1.clone(),
                    signing_private_key: api_secret.clone(),
                    client_certificate_bundle: key2.clone(),
                }),
                _ => Err(err(
                    "Deutsche Bank requires MultiAuthKey auth type \
                     (customer_identifier / key_id / signing_private_key / client_certificate_bundle)",
                )),
            },
            Connector::Imerchantsolutions => match auth {
                ConnectorAuthType::HeaderKey { api_key } => Ok(Self::Imerchantsolutions {
                    api_key: api_key.clone(),
                    merchant_id: None,
                }),
                ConnectorAuthType::BodyKey { api_key, key1 } => Ok(Self::Imerchantsolutions {
                    api_key: api_key.clone(),
                    merchant_id: Some(key1.clone()),
                }),
                _ => Err(err("Imerchantsolutions requires HeaderKey auth type")),
            },
            Connector::AbsaSanlam => match auth {
                ConnectorAuthType::BodyKey { api_key, key1 } => Ok(Self::AbsaSanlam {
                    api_key: api_key.clone(),
                    merchant_id: key1.peek().clone(),
                }),
                _ => Err(err("AbsaSanlam requires BodyKey auth type")),
            },
            Connector::GotymeSanlam => match auth {
                ConnectorAuthType::BodyKey { api_key, key1 } => Ok(Self::GotymeSanlam {
                    api_key: api_key.clone(),
                    profile_id: key1.peek().clone(),
                }),
                _ => Err(err("GotymeSanlam requires BodyKey auth type")),
            },
            Connector::Payconex => match auth {
                ConnectorAuthType::BodyKey { api_key, key1 } => Ok(Self::Payconex {
                    api_key: api_key.clone(),

View on GitHub (pinned to 3093f22cc4)

Solutions

  1. Configure the merchant connector account for Imerchantsolutions with the HeaderKey connector_auth_type
  2. Recreate/update the connector account credentials to match the HeaderKey schema

When it happens

Trigger: Thrown at crates/router/src/core/unified_connector_service/connector_config.rs:1697 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of juspay/hyperswitch@3093f22cc4 (2026-08-19). Data as JSON: /api/errors/5bb481b7e0f6d0c7. Report an issue: GitHub.