Merchants

Manage merchants under your partner account.

This endpoint set is partner-level only. Organisation API keys cannot access these endpoints.

Base URL: https://api.chargebackstop.com/v1/merchants/ Authentication: Bearer token via API key.

Required abilities:

  • merchants:read for GET endpoints

  • merchants:write for POST, PATCH, and DELETE endpoints

Access scope model:

  • Admin partner-group keys can access merchants across all organisations belonging to their partner.

  • Non-admin partner-group keys can access merchants only in organisations explicitly assigned to their group.

  • Organisation-level keys receive 401 Unauthorised on all endpoints in this API.


GET /v1/merchants - List merchants

Returns merchants accessible to the authenticated partner-group API key.

API level: Partner-level only Authentication: merchants:read

Query parameters

Parameter
Type
Description

type

string

Filter by merchant type

name

string

Case-insensitive partial match on merchant name

external_id

string

Filter by exact external merchant ID

sort

string

Sort field: name, type, created_at, updated_at; prefix with - for descending

limit

integer

Number of results per page

offset

integer

Number of results to skip

circle-info

When sort is omitted, results are ordered by created_at descending.

Example request

Example response


POST /v1/merchants - Create merchant

Create a new merchant for an accessible organisation.

API level: Partner-level only Authentication: merchants:write

Request body

Field
Type
Required
Validation
Description

organisation_id

string

Yes

Must be accessible by API key

Organisation that owns the merchant

name

string

Yes

Min length 1

Merchant display name

type

string

Yes

Must be a supported merchant type

Merchant type

external_id

string

No

Max length 250

Optional external merchant ID

default_representment_service_type

string

No

PHYSICAL_GOODS, ONLINE_SERVICES, or OFFLINE_SERVICES

Default representment service type. If you do not use ChargebackStop representment/disputes workflows, omit this field.

circle-info

If you do not use ChargebackStop representment/disputes workflows, skip default_representment_service_type.

Example request

Example response


GET /v1/merchants/{merchant_id} - Get merchant by ID

Retrieve one accessible merchant by ID.

API level: Partner-level only Authentication: merchants:read

URL parameters

Parameter
Type
Description

merchant_id

string

Merchant ID

Example request

Example response


PATCH /v1/merchants/{merchant_id} - Update merchant

Update one accessible merchant.

API level: Partner-level only Authentication: merchants:write

URL parameters

Parameter
Type
Description

merchant_id

string

Merchant ID to update

Request body

At least one field should be provided.

Field
Type
Required
Validation
Description

name

string

No

Min length 1

Updated merchant name

type

string

No

Must be a supported merchant type

Updated merchant type

external_id

string or null

No

Optional

Updated external ID (null clears value)

default_representment_service_type

string or null

No

PHYSICAL_GOODS, ONLINE_SERVICES, OFFLINE_SERVICES, or null

Updated default representment service type. If you do not use ChargebackStop representment/disputes workflows, omit this field.

circle-info
  • Merchant type changes are blocked when related integrations, enrolments, or data providers exist.

  • Other fields can still be updated when type changes are blocked.

  • If you do not use ChargebackStop representment/disputes workflows, skip default_representment_service_type.

Example request

Example response


DELETE /v1/merchants/{merchant_id} - Delete merchant

Delete one accessible merchant.

API level: Partner-level only Authentication: merchants:write

URL parameters

Parameter
Type
Description

merchant_id

string

Merchant ID to delete

circle-info

Deletion is blocked when the merchant has related enrolments or alerts.

Example request

Example response

204 No Content


Common error responses

401 Unauthorised

Returned for invalid or expired API keys, and for organisation-level keys calling this partner-only API.

403 Forbidden (missing ability)

Returned when the API key is valid but missing required ability (merchants:read or merchants:write).

404 Not found

Returned when the merchant is not found.

422 Unprocessable Entity (merchant type change restricted)

422 Unprocessable Entity (merchant deletion restricted)

Other business validation codes you may receive:

Code
Meaning

INVALID_MERCHANT_TYPE

type is not a valid merchant type

INVALID_REPRESENTMENT_SERVICE_TYPE

default_representment_service_type is not valid

MERCHANT_TYPE_CHANGE_RESTRICTED

Requested type change is blocked by related records

MERCHANT_DELETION_RESTRICTED

Merchant cannot be deleted due to related records

Was this helpful?