Confirm a Payment Intent
curl --request POST \
--url https://api.staging.blackbird.xyz/flynet/v1/payment_intents/{id}/confirmconst options = {method: 'POST'};
fetch('https://api.staging.blackbird.xyz/flynet/v1/payment_intents/{id}/confirm', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));const options = {method: 'POST'};
fetch('https://api.staging.blackbird.xyz/flynet/v1/payment_intents/{id}/confirm', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));Payments
Confirm a Payment Intent
POST
/
payment_intents
/
{id}
/
confirm
Confirm a Payment Intent
curl --request POST \
--url https://api.staging.blackbird.xyz/flynet/v1/payment_intents/{id}/confirmconst options = {method: 'POST'};
fetch('https://api.staging.blackbird.xyz/flynet/v1/payment_intents/{id}/confirm', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));const options = {method: 'POST'};
fetch('https://api.staging.blackbird.xyz/flynet/v1/payment_intents/{id}/confirm', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));Confirms a pending intent and transfers FLY from the customer’s wallet
to the merchant. The customer must already hold enough FLY.
Auth: OAuth access token.
Request body
{
"user_id": "{uuid}"
}
Example
curl -X POST https://api.staging.blackbird.xyz/flynet/v1/payment_intents/{uuid}/confirm \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{ "user_id": "{uuid}" }'
Response
{
"id": "{uuid}",
"object": "payment_intent",
"status": "paid",
"paid_at": "2026-05-11T20:01:00Z",
"amount": { "value": "1000000000000000000", "currency": "FLY" }
}
Errors
| Code | Meaning |
|---|---|
400 payment0030 | Customer has insufficient FLY. |
400 paymentIntent0003 | Intent is not in a confirmable state. |
| 401 | Missing or invalid OAuth bearer. Empty body. |