---
title: "TIP-20 Memo/Commitment Validator"
method: POST
path: "/v1/tools/validate_tip20_memo_commitment"
tags: ["TODO_TAGS_REVIEW", "TODO_AP2_EXPORT_REVIEW"]
---

# TIP-20 Memo/Commitment Validator

`POST /v1/tools/validate_tip20_memo_commitment`

## Request

- Base URL: `https://ainumbers.co`
- URL: `https://ainumbers.co/v1/tools/validate_tip20_memo_commitment`
- Auth: none declared

Validates a TIP-20 TransferWithMemo's 32-byte memo as a hash-or-locator commitment: checks length/hex form, recomputes the SHA-256 commitment over a supplied off-chain payload or a templated invoice-ID locator, and reports whether the memo matches. Integrity-only -- distinct from screen_tip20_transfer_batch (art-38, AML/Travel Rule screening of a transfer batch). Calculator only, zero egress.

**Tool URL:** https://ainumbers.co/chaingraph/art-390-tip20-memo-commitment-validator.html

## Request body

- object
  - `invoice_id` unknown, required
  - `invoice_locator_template` unknown, required
  - `memo_hex` unknown, required
  - `payload` unknown, required

## Response `200`

Successful tool execution result

- object
  - `commitment_source_supplied` boolean
  - `invoice_locator` string
  - `invoice_locator_commitment` string
  - `invoice_locator_match` string
  - `memo_hex` string
  - `memo_hex_valid` boolean
  - `memo_length_valid` boolean
  - `note` string
  - `overall_valid` boolean
  - `payload_commitment` string
  - `payload_commitment_match` boolean

---

[API](https://skmtc.dev/ainumbers/apis/ainumbers-co-fintech-intelligence-suite.md) · [All operations](https://skmtc.dev/ainumbers/apis/ainumbers-co-fintech-intelligence-suite/llms.txt) · [OpenAPI document](https://skmtc.dev/ainumbers/apis/ainumbers-co-fintech-intelligence-suite/revisions/b462e4f5bb28?raw)
