---
title: "Register a creditor"
method: POST
path: "/creditor-agents/{ica}/creditors"
tags: ["CreditorRegistration"]
---

# Register a creditor

`POST /creditor-agents/{ica}/creditors`

## Request

- Base URL: `https://api.mastercard.com/commercial/payments`
- URL: `https://api.mastercard.com/commercial/payments/creditor-agents/{ica}/creditors`
- Auth: none declared
- TypeScript: <https://skmtc.dev/mastercard/apis/payment-acceptance-api/docs/creditor-agents/:ica/creditors/post.ts> (a function with typed inputs; its response is checked against the schema)

This endpoint allows you to register a new Creditor in the Supplier Directory.

## Path parameters

- `ica` string, required

## Request body

- CreditorRecord
  - `dba` string: Doing Business As
  - `inactiveReason` string: Identifies the reason why the business is not active in CDP. Valid Values 'PRE_REGISTERED', 'AGENT_HOLD'
  - `isActive` boolean: Indicates if the business is active in CDP.
  - `legalBusinessAddress` CreditorLegalAddress, required: Identifies the legal business address of the Creditor receiving the payment.
    - `addressLine` string, required: Identifies the street address of the business.
    - `country` string, required: Identifies the country where the business is located.
    - `countrySubDivision` string: Identifies the subdivision within a country where the business is located such as the state, region, or county.
    - `postCode` string: Identifies the mailing or zip code for the business.
    - `townName` string: Identifies the name of the city or geographical location of the business.
  - `legalBusinessName` string, required: Identifies the legal business name of the Creditor receiving the payment.
  - `organisationIdentifications` OrganisationIdentification[], required: A unique and unambiguous way to identify an organisation.
    - `identification` string, required: A unique identification for the organisation.
    - `type` string, required: Organisation Identification Type
  - `paymentProfiles` CreditorProfile[], required: The profile associated with the business making the payment. The payment profile includes its payment preferences.
    - `isActive` boolean: Indicates if the profile is active in CDP.
    - `email` string, email: Business-only email of profile (not personal).
    - `gatewayIdentification` GatewayIdentification: Gateway identification details for the creditor.
      - `merchantId` string, nullable: The merchant identifier.
      - `terminalIds` string[]: List of terminal identifiers associated with the merchant. Maximum 100 items, each alphanumeric having min length 3 and max length 8.
      - `gatewayName` string: The name of the payment gateway. Allows letters, numbers, spaces, hyphens, and underscores.
      - `bankMerchantId` string: The Bank Merchant ID/SE Number is an identifier allocated to the merchant by their acquiring bank.
      - `acquirerBank` string: Bank that processes merchant card payments and settles funds.
      - `acquirerId` string: The unique identifier for the acquirer issued by the gateway.
      - `cardBrands` string[]: The list of valid card types supported by this merchant acquirer link. One of MASTERCARD, VISA, AMEX, DINERS_CLUB, JCB, DISCOVER, UNION_PAY, MAESTRO
      - `currencies` string[]: List of currencies associated with the merchant. The currencies list must not exceed 10 elements. Each currency must contain only alphanumeric characters and must not exceed 3 characters in length.ISO 4217 alpha-3 e.g. USD, EUR
      - `pennyTxnTokenRefId` string, uuid: The penny transaction token reference identifier. Optional. The pennyTxnTokenRefId must be UUID.
      - `attributes` string[]: Additional gateway attributes as key value pair strings. Each entry must not exceed 2048 characters. Below are the required attributes based on card brand and acquirer- url - attribute is required if the card brand is American Express. region - mpgs-nam,mpgs-eu,mpgs-ap,mpgs-in. Region of Merchant categoryCode - Min & Max length 4. Data is a string that consists of the characters 0-9. A 4 digit industry specific code that describes the business or industry the merchant operates in. timeZone - Min length 1 & Max length 40. It is used to display the transaction time. The value must be provided in the form '<Continent>/<City>', e.g. 'America/New_York'. goodsDescription - Min length 1 & Max length 80. Description of the merchant's goods, for example, books or electronics. visaMerchantVerificationValue - Min and Max length 10. Data is hexadecimal encoded. The Merchant Verification Value (MVV) assigned to the merchant by Visa. Value will be submitted to the acquirer on transaction requests with card type Visa serviceProviderMerchantId - Min length 8 & Max length 16. The unique identifier for the merchant with the Service Provider
    - `payToAddress` PayToAddress: Identifies the Creditor's billing address provided to the Debtor to include when making the payment.
      - `addressLine` string, required: Identifies the street address where the Debtor must send the payment.
      - `country` string, required: Identifies the country of the Creditor's payTo address.
      - `countrySubDivision` string, required: Identifies the subdivision where the business is located such as state, region, or county.
      - `postCode` string, required: Identifies the mailing or zip code.
      - `townName` string, required: Identifies the name of the city or geographical location of the payTo address.
    - `paymentMethods` string[], required: Identifies the supported payment methods. Specifies the form of payment that will be used to complete the transaction. Valid values: CARD
    - `creditorProfileId` string, required: Payment profile identifier, Format must be either: '\<creditor\>@stp' or '\<creditor\>.\<branch\>@stp'. Follow below format specifications - \<creditor\> is limited to 25 characters (no special characters) \<branch\> is optional and limited to 25 characters (no special characters) '@stp' is required not case sensitive.
    - `paymentProcessor` string: ICA of the payment processor.

## Response `201`

A unique ID for each result.

- ResultId
  - `id` string: A unique ID generated for each result.

## Other responses

- `400`: Bad request
- `401`: Unauthorized

---

[API](https://skmtc.dev/mastercard/apis/payment-acceptance-api.md) - [All operations](https://skmtc.dev/mastercard/apis/payment-acceptance-api/llms.txt) - [OpenAPI document](https://skmtc.dev/mastercard/apis/payment-acceptance-api/revisions/baa0a0739572?raw)
