---
title: "Enroll a payment method"
method: POST
path: "/v1/merchants/{merchant-id}/enrollments"
tags: ["Enrollment Endpoints"]
---

# Enroll a payment method

`POST /v1/merchants/{merchant-id}/enrollments`

## Path parameters

- `merchant-id` string, required

## Request body

- EnrollmentRequest
  - `paymentMethod` string, required — The payment method to be enrolled.
  - `webhooksUrl` string — The URL to which the enrollment state changes will be notified.

## Response `200`

OK

- EnrollmentResponse
  - `id` string — The enrollment identifier.
  - `status` 'INITIATED' | 'PROVIDER_PENDING' | 'ACTIVE' | 'INACTIVE' | 'SUSPENDED' | 'FAILED' — The enrollment status.
  - `paymentMethod` string — The enrollment payment method.
  - `failure` EnrollmentFailure
    - `failureType` 'INTERNAL_ERROR' | 'INTERNAL_DECLINE' | 'PROVIDER_ERROR' | 'PROVIDER_DECLINE' — The failure type.
    - `failureCode` string — The failure code.
    - `providerFailureCode` string — The payment provider failure code.
    - `failureMessage` string — The failure message.
  - `createdAt` string, date-time — The enrollment creation timestamp in ISO 8601 format.
  - `updatedAt` string, date-time — The enrollment update timestamp in ISO 8601 format.

## Other responses

- `409` — When the merchant is already enrolled in the given payment method.
- `504` — Response timeout.

---

[API](https://skmtc.net/ppro/apis/payment-charges.md) · [All operations](https://skmtc.net/ppro/apis/payment-charges/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/ppro/payment-charges/revisions/112e8bb4c815/schema)
