---
title: "Mark onramp event consumed after SA->tipping transfer submission"
method: POST
path: "/v1/onramp/transfer-complete"
tags: ["onramp"]
---

# Mark onramp event consumed after SA->tipping transfer submission

`POST /v1/onramp/transfer-complete`

Mark a settled onramp event as consumed after the frontend submits the
SA→tipping wallet transfer transaction.

This is the final step: the frontend sends the settled amount from the Smart Account
to the tipping wallet, then calls this endpoint with the transaction hash.

**Idempotent:** If already consumed with the same tx_hash, returns current state.

**Error codes:**
- 400: Invalid transfer_tx_hash format (must be 0x + 64 hex chars)
- 404: Event not found or doesn't belong to authenticated account
- 409: Event not in `confirmed` status, or consumed with a different tx_hash

## Headers

- `authorization` string, nullable — Bearer JWT issued by Grove.

## Request body

- OnrampTransferCompleteRequest — Request model for POST /v1/onramp/transfer-complete.
  - `event_id` string, required — Onramp event ID
  - `transfer_tx_hash` string, required — SA->tipping wallet transfer transaction hash

## Response `200`

Successful Response

- OnrampTransferCompleteResponse — Response model for POST /v1/onramp/transfer-complete.
  - `event_id` string, required — Onramp event ID
  - `status` string, required — Event status after update
  - `consumed` boolean, required — Whether event is now consumed
  - `transfer_tx_hash` string, nullable — Recorded transfer transaction hash
  - `lifecycle_state` string, nullable — Structured lifecycle state: awaiting_coinbase_completion, settlement_detected, transfer_submitted, needs_attention

## Other responses

- `400` — Invalid transfer_tx_hash format
- `401` — Missing or invalid JWT
- `404` — Onramp event not found
- `409` — Event not ready/consumed mismatch/conflict
- `422` — Validation Error

---

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