---
title: "Mark Payment As Paid"
method: POST
path: "/api/v2/payments/{payment_id}/mark-paid"
tags: ["Payments"]
---

# Mark Payment As Paid

`POST /api/v2/payments/{payment_id}/mark-paid`

Manually mark a payment as paid (full or partial).

Record a payment received through manual methods (CASH, BANK_TRANSFER, CARD, or QURRAH).

**Full:** omit ``amount`` or pass ``amount == payment.amount``.
**Partial:** pass ``amount < payment.amount`` with remainder greater than 1 in the
payment currency (not allowed while UNDER_REVIEW).
  - Selected payment amount is reduced and marked SUCCEEDED.
  - A new PENDING ``SPLIT_REMAINDER`` payment is created for the remainder.
  - ``invoice.type`` is unchanged (ONE_OFF stays ONE_OFF).
  - Invoice completes only when every payment is paid.

## Path parameters

- `payment_id` string, uuid, required — Unique identifier (UUID) of the payment to mark as paid

## Request body

- PaymentMarkPaidRequest
  - `payment_method` 'MADA' | 'MASTERCARD' | 'VISA' | 'APPLE_PAY' | 'SAMSUNG_PAY' | 'AMEX' | 'CASH' | 'PGW_CARD_UNSPECIFIED' | 'BANK_TRANSFER' | 'CARD' | 'QURRAH' | 'BNPL', required
  - `note` string, nullable — Optional note or reference number for the payment (e.g., transaction ID, receipt number)
  - `pos_transaction_id` string, nullable — Optional transaction/network reference ID. Only allowed when payment_method is CARD.
  - `amount` union — Amount paid now. Omit or set equal to payment.amount for a full mark-as-paid. If less than payment.amount, the payment is split: this amount becomes SUCCEEDED and a new PENDING SPLIT_REMAINDER payment is created for the remainder (remainder must be greater than 1 in the payment currency). Partial mark-as-paid is not allowed while the payment is UNDER_REVIEW.
    - number
    - string

## Response `200`

Successful Response

- PaymentMarkPaidResponse

## Other responses

- `422` — Validation Error

## Changes

- **2026-09-15** `85261606a8ea` — 1 info
  - added the new optional request property `pos_transaction_id`

[Change history](https://skmtc.dev/streampay/apis/stream-app/changes/api/v2/payments/:payment_id/mark-paid/post.md)

---

[API](https://skmtc.dev/streampay/apis/stream-app.md) · [All operations](https://skmtc.dev/streampay/apis/stream-app/llms.txt) · [OpenAPI document](https://skmtc.dev/streampay/apis/stream-app/revisions/887ba33c169b?raw)
