---
title: "Verify Payment"
method: POST
path: "/v2/identities/{identifier}/payment/verify/{nonce}"
tags: ["Payment"]
---

# Verify Payment

`POST /v2/identities/{identifier}/payment/verify/{nonce}`

## Request

- The document declares no server URL.
- Auth: HTTP basic

Verify a payment by nonce.

## Path parameters

- `identifier` string, required
- `nonce` string, required

## Request body

- PaymentVerifyRequest
  - `txHash` string: If txHash not provided then only verification on the Payment contract will be performed by nonce and issuer DID.
  - `userDID` string: If a User DID is provided, the payment will be verified for the specified User DID.

## Response `200`

Payment verified

- PaymentStatus
  - `status` 'success' | 'failed' | 'pending' | 'canceled', required
  - `requestId` string, required

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `500`: Internal Server error

## Changes

- **2025-12-15** `28bafa48d05d`: 1 info
  - added the required property `requestId` to the response with the `200` status
- **2025-01-02** `f5336b4fb022`: 3 info
  - added the new optional request property `userDID`
  - request body became optional
  - the request property `txHash` became optional
- **2024-12-27** `2981b0b5cd88`: 1 info
  - endpoint added
- **2024-12-26** `7911e50304ae`: 1 breaking
  - api path removed without deprecation
- **2024-12-24** `d705ece785fa`: 3 info
  - added the new optional request property `userDID`
  - request body became optional
  - the request property `txHash` became optional

[Operation history](https://skmtc.dev/0xpolygonid/apis/privado-id-issuer/changes/v2/identities/:identifier/payment/verify/:nonce/post.md)

---

[API](https://skmtc.dev/0xpolygonid/apis/privado-id-issuer.md) - [All operations](https://skmtc.dev/0xpolygonid/apis/privado-id-issuer/llms.txt) - [OpenAPI document](https://skmtc.dev/0xpolygonid/apis/privado-id-issuer/revisions/8ea65174fe46?raw)
