---
title: "Process VOP Consent (Decoupled)"
method: PUT
path: "/payments/consentvop"
tags: ["VOP Consent"]
---

# Process VOP Consent (Decoupled)

`PUT /payments/consentvop`

Allows customers to provide consent for VOP (Verification of Payee) payments using decoupled architecture. Customer ID is provided in the request body. When consent is true, the VOP_Hold flag is set to false. When consent is false, the VOP_Hold flag remains true and payment status is updated to Rejected.

## Request body

- VOPConsentRequestData
  - `customerId` string, required — The customer ID for whom the VOP consent is being processed
  - `paymentConsents` PaymentConsentWebData[], required — List of payment consent data
    - `paymentId` string, required — External payment ID to take action on
    - `consent` boolean, required — Customer consent decision (true/false)

## Response `200`

OK - VOP consent processed successfully

- VOPConsentResultData
  - `message` string — Overall result message
  - `results` PaymentConsentResultData[] — Individual payment consent results
    - `paymentId` string — Payment ID that was processed
    - `success` boolean — Whether the consent processing was successful
    - `status` string — Current status of the payment (Approved/Rejected)
    - `errorMessage` string — Error message if processing failed

## Other responses

- `400` — Bad Request - Invalid request data
- `401` — Unauthorized
- `500` — Internal Server Error

---

[API](https://skmtc.net/convera/apis/payments-api.md) · [All operations](https://skmtc.net/convera/apis/payments-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/convera/payments-api/revisions/ff82548143cf/schema)
