---
title: "Create an sca provider on the given merchant profile"
method: POST
path: "/sca/providers"
tags: ["sca_provider"]
---

# Create an sca provider on the given merchant profile

`POST /sca/providers`

Create an SCA Provider on the given Merchant Profile. An SCA Provider can be used to run [3DS2 Global](https://developer.spreedly.com/docs/3ds-solutions) authentications on the [authenticate](https://developer.spreedly.com/reference/authenticate) endpoint or as part of [authorize](https://developer.spreedly.com/reference/authorize) and [purchase](https://developer.spreedly.com/reference/purchase) transactions. At least one card type object must be included in the request. The following card types are supported: `Visa`, `Mastercard`, `American Express`, and `Discover`.

## Request body

- ScaProvider
  - `merchant_profile_key` string, required — The token returned upon creating a Merchant Profile
  - `type` string, required — The type of SCA Provider being created. Currently only one type is supported: `spreedly` (case sensitive)
  - `sandbox` boolean — If the SCA Provider accounts is to be provisioned in sandbox mode or not. `false` by default.
  - `visa` ScaProviderVisa — A nested object containing merchant info per card brand that is to be registered with the 3DS server. See `acquirer_bin`, `merchant_url`, and `merchant_password` below for nested field information
    - `acquirer_bin` string, required — The Acquirer Bank Identification Number (BIN) is identifying BIN for an acquiring bank. The BIN is used to submit authorization requests and ensure that payments are routed to the correct institution.
    - `merchant_url` string, required — Fully qualified URL of the merchant’s main website or customer care site that contains a method of contact.
    - `merchant_password` string — An old parameter for 3DS v1, unrelated to 3DS2. We support this parameter for those merchants who already have it activated and are migrating to our 3DSS, not for new ones. If you do not know the parameter, don’t take it into account.
    - `merchant_brand_id` string — An optional parameter for an id issued to a merchant by a particular card scheme. When passed in the `visa` subhash it can be used to enable DAF via 3DS2 Global.
  - `mastercard` ScaProviderCardDetails — A nested object containing merchant info per card brand that is to be registered with the 3DS server. See `acquirer_bin`, `merchant_url`, and `merchant_password` below for nested field information
    - `acquirer_bin` string, required — The Acquirer Bank Identification Number (BIN) is identifying BIN for an acquiring bank. The BIN is used to submit authorization requests and ensure that payments are routed to the correct institution.
    - `merchant_url` string, required — Fully qualified URL of the merchant’s main website or customer care site that contains a method of contact.
    - `merchant_password` string — An old parameter for 3DS v1, unrelated to 3DS2. We support this parameter for those merchants who already have it activated and are migrating to our 3DSS, not for new ones. If you do not know the parameter, don’t take it into account.
  - `amex` ScaProviderCardDetails — A nested object containing merchant info per card brand that is to be registered with the 3DS server. See `acquirer_bin`, `merchant_url`, and `merchant_password` below for nested field information
    - `acquirer_bin` string, required — The Acquirer Bank Identification Number (BIN) is identifying BIN for an acquiring bank. The BIN is used to submit authorization requests and ensure that payments are routed to the correct institution.
    - `merchant_url` string, required — Fully qualified URL of the merchant’s main website or customer care site that contains a method of contact.
    - `merchant_password` string — An old parameter for 3DS v1, unrelated to 3DS2. We support this parameter for those merchants who already have it activated and are migrating to our 3DSS, not for new ones. If you do not know the parameter, don’t take it into account.
  - `discover` ScaProviderCardDetails — A nested object containing merchant info per card brand that is to be registered with the 3DS server. See `acquirer_bin`, `merchant_url`, and `merchant_password` below for nested field information
    - `acquirer_bin` string, required — The Acquirer Bank Identification Number (BIN) is identifying BIN for an acquiring bank. The BIN is used to submit authorization requests and ensure that payments are routed to the correct institution.
    - `merchant_url` string, required — Fully qualified URL of the merchant’s main website or customer care site that contains a method of contact.
    - `merchant_password` string — An old parameter for 3DS v1, unrelated to 3DS2. We support this parameter for those merchants who already have it activated and are migrating to our 3DSS, not for new ones. If you do not know the parameter, don’t take it into account.

## Response `201`

Created

- ScaProviderResponse
  - `sca_provider` object
    - `token` string — The token identifying your newly created SCA Provider. Can be used as the `sca_provider_key` url parameter on the [authenticate](https://developer.spreedly.com/reference/authenticate) endpoint or as the `sca_provider_token` field on [authorize](https://developer.spreedly.com/reference/authorize-1) and [purchase](https://developer.spreedly.com/reference/purchase) transactions.
    - `sandbox` boolean — If the SCA Provider accounts is to be provisioned in sandbox mode or not. `false` by default.
    - `created_at` string — The time the sca provider was created
    - `updated_at` string — The time the sca provider was last updated
    - `type` string — The type of SCA Provider being created. Currently only one type is supported: `spreedly` (case sensitive)
    - `visa` ScaProviderVisa — A nested object containing merchant info per card brand that is to be registered with the 3DS server. See `acquirer_bin`, `merchant_url`, and `merchant_password` below for nested field information
      - `acquirer_bin` string, required — The Acquirer Bank Identification Number (BIN) is identifying BIN for an acquiring bank. The BIN is used to submit authorization requests and ensure that payments are routed to the correct institution.
      - `merchant_url` string, required — Fully qualified URL of the merchant’s main website or customer care site that contains a method of contact.
      - `merchant_password` string — An old parameter for 3DS v1, unrelated to 3DS2. We support this parameter for those merchants who already have it activated and are migrating to our 3DSS, not for new ones. If you do not know the parameter, don’t take it into account.
      - `merchant_brand_id` string — An optional parameter for an id issued to a merchant by a particular card scheme. When passed in the `visa` subhash it can be used to enable DAF via 3DS2 Global.
    - `mastercard` ScaProviderCardDetails — A nested object containing merchant info per card brand that is to be registered with the 3DS server. See `acquirer_bin`, `merchant_url`, and `merchant_password` below for nested field information
      - `acquirer_bin` string, required — The Acquirer Bank Identification Number (BIN) is identifying BIN for an acquiring bank. The BIN is used to submit authorization requests and ensure that payments are routed to the correct institution.
      - `merchant_url` string, required — Fully qualified URL of the merchant’s main website or customer care site that contains a method of contact.
      - `merchant_password` string — An old parameter for 3DS v1, unrelated to 3DS2. We support this parameter for those merchants who already have it activated and are migrating to our 3DSS, not for new ones. If you do not know the parameter, don’t take it into account.
    - `amex` ScaProviderCardDetails — A nested object containing merchant info per card brand that is to be registered with the 3DS server. See `acquirer_bin`, `merchant_url`, and `merchant_password` below for nested field information
      - `acquirer_bin` string, required — The Acquirer Bank Identification Number (BIN) is identifying BIN for an acquiring bank. The BIN is used to submit authorization requests and ensure that payments are routed to the correct institution.
      - `merchant_url` string, required — Fully qualified URL of the merchant’s main website or customer care site that contains a method of contact.
      - `merchant_password` string — An old parameter for 3DS v1, unrelated to 3DS2. We support this parameter for those merchants who already have it activated and are migrating to our 3DSS, not for new ones. If you do not know the parameter, don’t take it into account.
    - `discover` ScaProviderCardDetails — A nested object containing merchant info per card brand that is to be registered with the 3DS server. See `acquirer_bin`, `merchant_url`, and `merchant_password` below for nested field information
      - `acquirer_bin` string, required — The Acquirer Bank Identification Number (BIN) is identifying BIN for an acquiring bank. The BIN is used to submit authorization requests and ensure that payments are routed to the correct institution.
      - `merchant_url` string, required — Fully qualified URL of the merchant’s main website or customer care site that contains a method of contact.
      - `merchant_password` string — An old parameter for 3DS v1, unrelated to 3DS2. We support this parameter for those merchants who already have it activated and are migrating to our 3DSS, not for new ones. If you do not know the parameter, don’t take it into account.

## Other responses

- `401` — Unauthorized
- `422` — Unprocessable

---

[API](https://skmtc.net/spreedly/apis/spreedly-api-v1.md) · [All operations](https://skmtc.net/spreedly/apis/spreedly-api-v1/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/spreedly/spreedly-api-v1/versions/72ba4e23e65c/schema)
