---
title: "Merchant and Terminal Registration"
method: POST
path: "/merchantportalws/registerNewMerchant"
tags: ["merchant-portal-api-controller"]
---

# Merchant and Terminal Registration

`POST /merchantportalws/registerNewMerchant`

## Request

- Base URL: `//test.tecs.at` (relative, and the document’s source URL is not known)
- URL: `//test.tecs.at/merchantportalws/registerNewMerchant`
- Auth: none declared. Required headers: `Authorization`

Registers a new merchant along with its first terminal on the TECS Platform. The caller must supply all required merchant details, including the package ID (supplied by TECS) and merchant address information. On success, the response includes a unique package order UUID (packageorderuuid) that must be stored and used for subsequent registrations  (such as additional terminals or acquirers). If the merchant username or password are omitted, TECS will generate and return them.

## Headers

- `Authorization` string, required

## Request body

- InputRegisterNewMerchant
  - `account_number` integer: Account number provided by the acquirer.
  - `additional_data` object: Arbitrary merchant-specific data related to enabling acquiring or terminal registration. This object can contain key-value pairs where the value is a string.
  - `business_reg_number` string, required: Merchant business registration number as stated in the company registry. Typically a 9-character alphanumeric string.
  - `city` string, required: Merchant's address: city.
  - `corporateuuid` string: Unique identifier for the corporate entity (UUID format).
  - `country` string, required: Merchant's address: country (must be in 'ISO-3166 ALPHA-3' format).
  - `currency` string, required: Transaction currency (must be in "ISO 4217" format).
  - `merchant_category_code` integer, required: Merchant category code as defined by the payment network.
  - `merchant_email` string, email: Merchant's email address for receiving notifications.
  - `merchant_name` string, required: The officially incorporated company name of the merchant.
  - `merchant_phone_number` string: Merchant's phone number for notifications. Must be in international format (e.g., +421910711234).
  - `packageid` string, required: Identifier of the package in the TECS processing engine provided by TECS. Typically a UUID.
  - `password` string: Merchant password for MPOS. If not provided, TECS will generate a password and return it in the response.
  - `productid` string: Identifier of the product for which terminal registration is being performed.
  - `productid_acquirer` string: Identifier of the product for which acquiring is enabled.
  - `sorting_code` integer: Sorting code provided by the acquirer.
  - `state` string: Merchant's address: state. May be null if not applicable.
  - `street` string, required: Merchant's address: street and house number.
  - `terminal_country_code` string, required: Terminal country code (must be in "ISO-3166 ALPHA-3" format).
  - `terminal_language_code` string, required: Terminal language code (must be in "ISO 639-1" format).
  - `terminal_location` string, required: Physical or logical location of the terminal.
  - `terminal_serial_number` string, required: Terminal serial number.
  - `terminalid_acquirer` string: Terminal ID as provided by the acquirer (if applicable).
  - `user_email` string, email: Email address of the user acting on behalf of the merchant.
  - `user_phone_number` string: Phone number of the user acting on behalf of the merchant. Must be in international format (e.g., +421910711234).
  - `username` string: Merchant username for MPOS. If not provided, TECS will generate a username and include it in the response.
  - `vu_nummer` string, required: Merchant contract number with the acquirer.
  - `web_shop_url` string, uri: URL of the merchant's web shop.
  - `zipcode` string, required: Merchant's address: postal code.

## Response `200`

Successful merchant and terminal registration.

- OutputRegisterNewMerchant
  - `corporateuuid` string: An UUID of the newly registered corporate (if created during the flow - it is an optional value).
  - `packageorderuuid` string: Unique identifier, which could be used later for registering additional terminals for existing merchants.
  - `password` string: TECS generated merchant password in case if not provided in request.
  - `responseCode` integer, required: Response code (0 = OK, otherwise an error code).
  - `responseMessage` string, required: Human readable response code representation.
  - `terminalid` integer: TECS terminalid given by TECS processing engine.
  - `username` string: TECS generated merchant username in case if not provided in request.

## Other responses

- `400`: Bad Request - One or more required fields are missing or in an incorrect format.
- `401`: Unauthorized - Invalid credentials provided.
- `403`: Forbidden - The caller does not have the necessary permissions to perform this operation.
- `500`: Internal Server Error - An unexpected error occurred on the server.

---

[API](https://skmtc.dev/bluefin-com/apis/merchant-portal-web-service-documentation.md) - [All operations](https://skmtc.dev/bluefin-com/apis/merchant-portal-web-service-documentation/llms.txt) - [OpenAPI document](https://skmtc.dev/bluefin-com/apis/merchant-portal-web-service-documentation/revisions/1d7ee5e85e1e?raw)
