Resolve provider review
POST
/providers/{providerID}/reviews/{reviewID}/resolutions
Resolve a pending review. Approve to let the payout proceed; reject to
block it. Rejecting the last pending review on a cancellable payout
(authorized or accepted) cancels that payout.
Returns 201 with the resolved review. Re-resolving an already-resolved
review returns 409. A review from another provider returns 404 without
side effects. An invalid resolution value returns 400.
Auth: API key or bearer token. Scoped to the calling provider.
Request
curl -X POST https://api.moov.money/providers/{providerID}/reviews/{reviewID}/resolutions \
-H "Content-Type: application/json" \
-d '{
"notes": "Verified account holder",
"resolution": "approved"
}'Responses
The resource was successfully created.
{
"review": {
"createdOn": "2026-08-31T12:00:00Z",
"payout": {
"amount": {
"currency": {
"code": "USD",
"decimalPlaces": 2,
"name": "US Dollar",
"numericCode": "840"
},
"value": "100.00"
},
"payoutID": "pay_01HF5J9ZKQT4RXP8M2VYBN3D",
"recipientName": "Jane Doe",
"status": "initiated"
},
"reason": "Payout amount above review threshold",
"reviewID": "prv_01HF5J9ZKQT4RXP8M2VYBN3D",
"riskAssessmentID": "ras_01HF5J9ZKQT4RXP8M2VYBN3D",
"status": "pending"
}
}Malformed request: the body or headers failed validation.
Authentication missing, invalid, or insufficient.
The requested resource was not found.
The request conflicts with the current state of the target resource.
The request was well-formed but couldn’t be processed (e.g. card declined).
Headers
X-Moov-Version
stringSet this header to the API version being targeted (e.g.
v2026.07.00). When omitted, the server applies its default version.Path parameters
providerID
string
requiredYour provider account ID.
reviewID
string
requiredIdentifier of the review.
Request
application/json
Your resolution for a pending review.
resolution must be approved or
rejected.notes
stringOptional free-form notes (max 512 characters).
resolution
string<enum>
requiredYour decision for this review. Must be
approved or rejected.Possible values:
approved,
rejectedResponse
Response envelope for resolve review; the resolved review is nested under
review.review
object
requiredThe resolved review summary.
Show child attributes
review
status
string<enum>
requiredCurrent review status.
Possible values:
pending,
approved,
rejectedreason
stringHuman-readable reason the payout was placed in review.
riskAssessmentID
stringRisk assessment that produced this review, when available.
payout
object
requiredPayout summary for the queue.
Show child attributes
review.payout
amount
object
requiredPayout amount and currency.
Show child attributes
review.payout.amount
currency
object
requiredISO 4217 currency descriptor.
Show child attributes
review.payout.amount.currency
decimalPlaces
integer<uint8>
requiredNumber of minor-unit decimal places for
code. Required.numericCode
stringISO 4217 numeric currency code, if known. Informational only.
name
stringHuman-readable currency name, if known. Informational only.
code
string
requiredUppercase 3-letter ISO 4217 currency code.
value
string
requiredDecimal amount as a string.
recipientName
stringRecipient display name when known (given + family), otherwise omitted.
status
string<enum>
requiredCurrent lifecycle status of the payout.
Possible values:
initiated,
authorized,
accepted,
claiming,
completed,
failed,
payout_failed,
cancelled,
expired,
deniedpayoutID
string
requiredUnique system-assigned payout identifier.
createdOn
string<date-time>
requiredWhen the review was created.
resolvedOn
string<date-time>When the review was resolved. Omitted while pending.
reviewID
string
requiredUnique system-assigned review identifier.