---
page_title: COFT | Alt ID Onboarding API
product: API Reference
page_source: https://juspay.io/in/docs/api-reference/docs/tokenization-apis/coft--alt-id-onboarding-api
openapi: https://juspay.io/in/docs/api/swagger?document=https%3A%2F%2Fjuspay.io%2Fin%2Fdocs%2Fapi-reference%2Fdocs%2Ftokenization-apis%2Fcoft--alt-id-onboarding-api
llms_txt: https://juspay.io/in/docs/llms.txt
product_llms_txt: https://juspay.io/in/docs/api-reference/llms.txt
---

## API Version: default


# COFT | Alt ID Onboarding API



This API facilitates merchant and submerchant onboarding to COFT and ALT_ID## Endpoints:
- Sandbox: https://sandbox.juspay.in/tokenization/onboarding

- Production: https://api.juspay.in/tokenization/onboarding

## Request Type: 
POST

## Content-Type: 
application/json

## Authorization:

#### Basic Auth:
Consists of two parts.

* Username: API Key obtained from Juspay dashboard
* Password: Empty string

Example:-Basic MUQ2QUxxxxxxxxxxxxU5QTIxQzNFNTQwNkFDMEZCOg==
- Tags: Base 64 Encoding, Mandatory
## Headers:

#### x-merchantid:
Please pass merchant-id assigned to you by Juspay
- Tags: String, Mandatory

#### content-type:
application/json
- Tags: String, Mandatory

#### version:
Pass recent date to get the updated API response.
- Value:  2023-11-01
- Tags: String, Mandatory

#### x-routing-id:
We recommend passing the customer_id as the x-routing-id. If the customer is checking out as a guest, you can pass an alternative ID that helps track the payment session lifecycle. For example, this could be an Order ID or Cart ID.

> **Warning**
> This ID is associated with the customer. It plays a key role in ensuring consistency and maintaining connections across different systems. If you fail to pass the same x-routing-id for the same customer in all related API calls, it could lead to issues with API functionality. Therefore, it’s crucial that you use the same x-routing-id for all requests tied to the same customer.


- Value: customer_1122
- Tags: String, Required
## Sample Code Snippets:
### Code Snippets:

#### Shell Code Snippet:

```shell
curl --location --request POST 'https://api.juspay.in/tokenization/onboarding' \
--header 'Authorization: Basic base_64_encoded_api_key==' \
--header 'version: 2023-06-30' \
--header 'x-routing-id: customer_1122'\
--header 'x-merchantid: <merchant id>' \
--header 'Content-Type: application/json' \
--data-raw '{
  "associateId": "rohit_juspay",
  "testMode": true,
  "companyDetails": {
    "legalName": "Partner's merchant Legal Name",
    "tradeName": "Partner's merchant trade Name",
    "websiteURL": "Partner's merchant URL",
    "contactEmail": "Partner's merchant Email",
    "businessIdentificationType": "",
    "businessIdentificationValue": ""
  },
 "flow": "ALT_ID",
 "network": "VISA"
}'

```

### Sample Request and Response:

#### Request:
```json
{
  "associateId": "rohit_juspay",
  "testMode": true,
  "companyDetails": {
    "legalName": "Partner's merchant Legal Name",
    "tradeName": "Partner's merchant trade Name",
    "websiteURL": "Partner's merchant URL",
    "contactEmail": "Partner's merchant Email",
    "businessIdentificationType": "",
    "businessIdentificationValue": ""
  },
 "flow": "ALT_ID",
 "network": "VISA"
}

```

#### Response:
```json
{
    "status": "SUCCESS",
    "associateId": "rohit_juspay",
    "response": {
        "visa": "onboarded",
        "mastercard": "onboarded",
        "rupay": "onboarded",
        "amex": "onboarded",
        "diners": "onboarded"
    }
}
```

## Body Parameters:
### Parametres:

#### associateId:
- Description: A unique value against the submerchant. This id will be passed in fetch onboarding api in the key submerchantId.Note: Travel Networks should use it to pass airline codes.
- Value: value
- Tags: String, Mandatory

#### companyDetails:
- Description: Details of submerchant (Partner’s/Reseller’s merchant)
- Value:
  - **LegalName**:
    - Description: Submerchant’s Legal Name
    - Tags: String, Mandatory
  - **TradeName**:
    - Description: Submerchant’s Trade Name
    - Tags: String, Mandatory
  - **WebsiteURL**:
    - Description: Submerchant’s website URL
    - Tags: String, Mandatory
  - **ContactEmail**:
    - Description: Submerchant’s contact email
    - Tags: String, Optional
  - **BusinessIdentificationType**:
    - Description: Type of submerchant’s identifierExample : PAN
    - Tags: String, Mandatory
  - **BusinessIdentificationValue**:
    - Description: Submerchant’s identifier valueExample : PAN Number
    - Tags: String, Mandatory
- Tags: CompanyDetails, Mandatory

#### flow:
- Description: Possible values: ALT_ID or COFT
- Tags: ENUM, Mandatory

#### network:
- Description: This is passed to enable specific networksIf not passed, then all networks will be enabled
- Tags: String, Optional
## API Responses:
### 200:

#### status:
- Description: Status of the API call 

Possible values: Success or  Failure
- Tags: String, Mandatory

#### associateId:
- Description: Submerchant Identifier
- Tags: String, Mandatory

#### response:
- Description: Response contains onboarding status of the partner merchant on AltID flow at various networks
- Tags: Json, Mandatory
### 401:

#### errorMessage:
- Description: Reason for failure
- Tags: String, Mandatory

#### errorCode:
- Description: Error Code
- Tags: String, Mandatory


---

## See Also

- [Fetch Alt ID and Cryptogram API](https://juspay.io/in/docs/api-reference/docs/tokenization-apis/fetch-alt-id-and-cryptogram-api)
- [Understanding Alt ID Generation](https://juspay.io/in/docs/api-reference/docs/tokenization-apis/understanding-alt-id-generation)
