The transaction object

string
UUID.
string
On-chain transaction hash (66 characters). Unique.
string
SEND, RECEIVE, REQUEST or DEPOSIT.
string
Sender’s user UUID.
string
Receiver’s user UUID.
number
Decimal USDC.
string
PENDING, COMPLETED or FAILED.
string
ISO 8601 timestamp.
object
Public fields of the sender: id, name, phoneNumber, email, walletAddress.
object
Public fields of the receiver, same shape.

A confirmed transfer provides a transaction hash that the client records through the API. A confirmed transfer provides a transaction hash that the client records through the API.

Record a transaction

POST /transaction · Requires auth Called by the app after a payment is sent. Both addresses must belong to Numpay users.
string
required
66-character transaction hash.
string
required
Sender’s smart-account address (42 characters).
string
required
Receiver’s smart-account address (42 characters).
number
required
Positive decimal USDC.
string
required
SEND, REQUEST, RECEIVE or DEPOSIT. The app sends SEND.
string
required
PENDING, COMPLETED or FAILED.
Responses: 201 transaction · 400 invalid input · 404 sender or receiver isn’t a Numpay user.

Get a transaction

GET /transaction/{id}
string
required
Transaction UUID.

Get a transaction by hash

GET /transaction/tx/{txhash}
string
required
66-character on-chain hash.

List a user’s transactions

GET /transaction/user/{userId}
string
required
User UUID.
string
send (SEND rows the user sent), receive (non-deposit rows the user received) or deposit (the user’s deposits). Omit for all, newest first.
Response