---
title: "x402 Complete"
method: POST
path: "/orders/{order_id}/x402/complete"
tags: ["x402"]
---

# x402 Complete

`POST /orders/{order_id}/x402/complete`

## Request

- Base URL: `https://api.coinvoyage.io/v3`
- URL: `https://api.coinvoyage.io/v3/orders/{order_id}/x402/complete`
- Auth: none declared
- TypeScript: <https://skmtc.dev/coinvoyage/apis/coinvoyage-api-v3/docs/orders/:order_id/x402/complete/post.ts> (a function with typed inputs; its response is checked against the schema)

x402 payment completion. Public: the PAYMENT-SIGNATURE header is the auth boundary. Without it, returns 402 with a PAYMENT-REQUIRED header.

## Path parameters

- `order_id` string, required

## Headers

- `PAYMENT-SIGNATURE` string

## Response `202`

Payment verified and settling

## Other responses

- `400`: Invalid order id
- `402`: Payment required or invalid
- `404`: Order not found
- `422`: Invalid order status
- `500`: Internal Server Error

---

[API](https://skmtc.dev/coinvoyage/apis/coinvoyage-api-v3.md) - [All operations](https://skmtc.dev/coinvoyage/apis/coinvoyage-api-v3/llms.txt) - [OpenAPI document](https://skmtc.dev/coinvoyage/apis/coinvoyage-api-v3/revisions/3535f46f4c27?raw)
