# Register a merchant

> By calling the registration API, the ACQP can either register a new merchant or update an existing registration, such as modify merchant information and add payment products.

By calling the **registration** API, the Acquiring Service Provider (ACQP) can either register a new merchant or update an existing registration, such as modifying merchant information and adding payment products.

> **Note**: Only one merchant or store can be registered or updated at a time.

## Processing logic

When using the **registration** API, the ACQP needs to take the following things into consideration:

-   The following request parameters need to be correctly specified:

-   _productCodes_, _merchantInfo.referenceMerchantId_, and _storeInfo.referenceStoreId_: Refer to the [More information](../api_acq_tile/registration#mCtii) section in _API Reference_ to learn about how to specify these three parameters.

> **Note**: If the ACQP performs the TSP mode to integrate Alipay+ payment products, for each merchant, the ACQP needs to provide each TSP with a unique value of the _merchantInfo.referenceMerchantId_ parameter. For more information about TSP mode, see [Integration guides for TSP mode](../integration_tsp).

-   _merchantInfo.registrationDetail.registrationType_: indicates the merchant's business registration type, namely the type of the merchant's business registration number.
-   _merchantInfo.registrationDetail.registrationNo_: indicates the merchant's business registration number.

-   When calling a request to update an existing registration, check whether the last registration request is still within 30 minutes or processed. Only when the last request exceeds 30 minutes, or it is within 30 minutes but has been processed, can the new request be accepted; otherwise, it is rejected.
-   In the response, depending on the different values of the _result.resultStatus_ parameter, different actions need to be taken:

-   If the value of _result.resultStatus_ is `S`, the registration is successfully accepted by Alipay+.
-   If the value of _result.resultStatus_ is any other value, check the values of _result.resultCode_ and _result.resultMessage_ for more information.

For more information about how to use the **registration** API, see [registration](../api_acq_tile/registration).

## Sample

The following samples show the request and response when the ACQP calls the Alipay+ **registration** API in the Cashier Payment Scenario.

**Request from the ACQP to Alipay+**

```json
{
  "registrationRequestId": "2020091811058602000006001420000",
  "merchantInfo": {
    "referenceMerchantId": "2188120000190000",
    "merchantDisplayName": "Example",
    "merchantMCC": "5735",
    "websites": [{
      "url": "https://alipayplus.com",
      "websiteType": "WEB"
    }],
    "registrationDetail": {
      "legalName": "ExampleLegalName",
      "registrationType": "ENTERPRISE_REGISTRATION_NO",
      "registrationNo": "RN100",
      "registrationAddress": {
        "region": "CN",
        "address1": "浙江省杭州市"
      },
      "businessType": "ENTERPRISE"
    }
  },
  "productCodes": ["CASHIER_PAYMENT"]
}
```

**Response from Alipay+ to the ACQP**

```json
{
  "result": {
    "resultCode": "SUCCESS",
    "resultStatus": "S",
    "resultMessage": "Success"
  }
}
```