# Netcetera

Please specify the payment needs to be externally authenticated via Netcetera by passing the below field in create payments call. You can read more about it [here](https://docs.hyperswitch.io/other-features/merchant-controls/payment-features/3d-secure-3ds/pages/JYdlAKMeo0JbAGXx6Byy#id-1.-create-a-payment-from-your-server-with-request_external_three_ds_authentication-as-true).

```
"request_external_three_ds_authentication": true
```

Pass your Netcetera SDK API key to Hyperswitch SDK like below.

{% tabs %}
{% tab title="Android" %}

<pre class="language-kotlin"><code class="lang-kotlin"><strong>configuration = PaymentSheet.Configuration.Builder("Example, Inc.")
</strong>                .netceteraSDKApiKey("YOUR_NETCETERA_API_KEY")
                .build()
</code></pre>

{% endtab %}

{% tab title="iOS" %}

```swift
configuration.netceteraSDKApiKey="YOUR_NETCETERA_API_KEY"
```

{% endtab %}

{% tab title="Flutter" %}

```dart
configuration: Configuration(netceteraSDKApiKey: "<YOUR_NETCETERA_API_KEY>")
```

{% endtab %}
{% endtabs %}

{% hint style="info" %}
In order to test external authentication on sandbox, a certificate needs to be added. Please follow the below steps.
{% endhint %}

Make the Hyperswitch [Payments - External 3DS Authentication](https://api-reference.hyperswitch.io/v1/payments/payments--external-3ds-authentication) request. Take the value of the field `acs_signed_content`, then decrypt it using [JWT.io](https://jwt.io/). Under the decrypted 'x5c' header you will get your root certificate.

{% hint style="info" %}
This certificate is required to decrypt response from Netcetera's Prev (Sandbox) environment Demo ACS Server.
{% endhint %}

{% hint style="success" %}
Please note the above step is not required for Production environment.
{% endhint %}

### Providing the root certificate to Hyperswitch SDK

#### Android

Put the obtained certificate in assets directory in your android project.

#### iOS

Put the obtained certificate in the root directory in your iOS project.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.hyperswitch.io/other-features/merchant-controls/payment-features/3d-secure-3ds/netcetera.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
