---
title: "Modify Merchant Services"
method: PUT
path: "/merchant-services"
tags: ["Merchant Services"]
---

# Modify Merchant Services

`PUT /merchant-services`

## Request

- Base URL: `https://prod.emea.api.fiservapps.com/ipp/omnipay/acquirerprofile/v1.0`
- URL: `https://prod.emea.api.fiservapps.com/ipp/omnipay/acquirerprofile/v1.0/merchant-services`
- Auth: API key in header `Api-Key` and API key in header `JWS-Signature`
- TypeScript: <https://skmtc.dev/fiserv/apis/acquirer-profile-in-design/docs/merchant-services/put.ts> (a function with typed inputs; its response is checked against the schema)

Operation allows to update details associated with an acquiring service assigned to a merchant effective contract.

## Headers

- `Content-Type` 'application/json' | 'application/json;charset=UTF-8', required
- `FSV-Interaction-Id` string, required
- `Environment` string, required
- `Institution-Number` string, required
- `Internal-Merchant-Id` string, required

## Request body

- MerchantServicesUpdate[]
  - `serviceIndex` string, required: Code id for the acquiring service. Valid values depends on the institution configuration. For a list of valid codes use Acquirer Profile API get /service-contracts/{serviceContractIndex}/services-tariff.
  - `tariffIndex` string: Code ID for the tariff which drives the default transactions fees to be generated for the merchant per service. For a list of valid codes use Acquirer Profile API service-contracts/{serviceContractIndex}/services-tariff endpoint.
  - `status` 'ACTIVE' | 'CLOSED': Status of the services, the main values can be Active or Closed
  - `floorLimit` string: Floor limit for merchant service selected; for information purpose only
  - `limitCurrency` string: The ISO 4217 currency code for the floor limit.
  - `dinersCode` 'CONVEYANCE_CLEARING' | 'DINERS_AND_DISCOVER' | 'NA': Processing model to be applied for the merchant for Diners and Discover. Required if the service id corresponds to a Diners/Discover service.
  - `jcbStateCodeIndex` string: State code required to process and clear JCB transaction. Only required for JCB services. Value depends on the institution configuration. For a list of valid status codes use Acquirer Profile API GET reference-data endpoint with query parameter clasifications equal jcbStateCodeIndex.
  - `jcbAreaCode1Index` string: Area code 1 required to process and clear JCB transaction. Only required for JCB services. State and selected area codes should be as per institution specific list of values. For a list of valid status codes use Acquirer Profile API GET reference-data endpoint with query parameter clasifications equal jcbAreaCode1Index.
  - `jcbArea2Index` string: Area code 2 required to process and clear JCB transaction. Only required for JCB services. State and selected area codes should be as per institution specific list of values. For a list of valid status codes use Acquirer Profile API GET reference-data endpoint with query parameter clasifications equal jcbArea2Index.
  - `merchantSubId` string: Merchant sub id required to process and clear Ideal transaction. Required for Ideal service. Must not exist on an already boarded merchant under same institution.
  - `acquirerNoOfInstallment` integer: Indicates the maximum allowed number of acquirer installments per presentment per acquiring service (serviceIndex) for a merchant.

## Response `200`

OK

- InlineResponse400: An API response. The API response will be either a `SUCCESS` or an `ERROR`. A partial success or warning scenario will be treated as a Success with embedded messages in the meta data. A full success may not have messages. The API response will contain at least one of the following top level members."
  - `meta` MetaType: Supplementary information about the data.
    - `paging` PagingMetaType: Map containing pagination related information about data.
      - `count` integer: Total number of records present in system which can be retrieved.
      - `totalPages` integer: Total number of pages with maximum limit taken into account.
      - `currentOffset` integer: Current offset used in request.
      - `currentNumberOfRetrievedRecords` integer: Current number of retrieved records.
      - `maxLimit` integer: Maximum limit of records that can be retrieved.
      - `hasMoreRecords` boolean: Indicates if there are more records available.
      - `pageNumber` integer: Current page number.
    - `sorting` SortingMetaType: Map containing sorting related information about data.
      - `sort` string: Indicates the elements the current data is sorted with and the direction of sorting.
    - `messages` ErrorType[]: Messages related to request processing or response data - any additional information or warnings to be returned in the case of a successful API call.
      - `id` string: Generated message identifier for particular request, helping to locate server logs.
      - `code` string, required: Machine readable, unique code of the message related to particular case within operation execution. For complete list of codes please refer to API portal, messages page.
      - `title` string, required: Short description of the error. Not for displaying purposes.
      - `detail` string: Provides additional low-level details about the error to assist with troubleshooting. Not for displaying purposes.
      - `source` SourceType: Object containing references to the source of the message.
        - `pointer` string: Indicates the element in the request document which caused the error.
        - `parameter` string: Indicates which query parameter caused the error.
        - `header` string: Indicates which header caused the error.
  - `data` object[]: "Contains the primary data to be returned as the API response. Use this object only when respnse type is an array. It will not be returned in case of error."
  - `errors` ErrorType[]: "Contains one or more error messages and is mutually exclusive with the data item. This will not be returned in success scenarios."
    - `id` string: Generated message identifier for particular request, helping to locate server logs.
    - `code` string, required: Machine readable, unique code of the message related to particular case within operation execution. For complete list of codes please refer to API portal, messages page.
    - `title` string, required: Short description of the error. Not for displaying purposes.
    - `detail` string: Provides additional low-level details about the error to assist with troubleshooting. Not for displaying purposes.
    - `source` SourceType: Object containing references to the source of the message.
      - `pointer` string: Indicates the element in the request document which caused the error.
      - `parameter` string: Indicates which query parameter caused the error.
      - `header` string: Indicates which header caused the error.
  - `links` LinksType: Contains the links to retrieve the resources exposed as part of this API.
    - `self` string: The link to the primary resource being retrieved in the request.
    - `first` string: This is to provide the link to retrieve the first record/page. This SHOULD be used in case server provides pagination of the resource.
    - `last` string: This is to provide the link to retrieve the last record/page. This SHOULD be used in case server provides pagination of the resource.
    - `prev` string: This is to provide the link to retrieve the previous record/page. This SHOULD be used in case server provides pagination of the resource.
    - `next` string: This is to provide the link to retrieve the last record. This SHOULD be used in case server provides pagination of the resource

## Other responses

- `400`: Invalid request
- `401`: Authorization error
- `403`: Forbidden error i.e. Consumer token credentials are valid but lack of permissions to do this action.
- `404`: Record does not exist
- `500`: Internal Server Error

---

[API](https://skmtc.dev/fiserv/apis/acquirer-profile-in-design.md) - [All operations](https://skmtc.dev/fiserv/apis/acquirer-profile-in-design/llms.txt) - [OpenAPI document](https://skmtc.dev/fiserv/apis/acquirer-profile-in-design/revisions/dd7ef6ce81a1?raw)
