Accept a quote, pinning its route
curl --request POST \
--url https://api.useroutr.com/v1/funding_intents/{id}/accept \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: <idempotency-key>' \
--data '
{
"quote_id": "<string>"
}
'import requests
url = "https://api.useroutr.com/v1/funding_intents/{id}/accept"
payload = { "quote_id": "<string>" }
headers = {
"Idempotency-Key": "<idempotency-key>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'Idempotency-Key': '<idempotency-key>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({quote_id: '<string>'})
};
fetch('https://api.useroutr.com/v1/funding_intents/{id}/accept', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.useroutr.com/v1/funding_intents/{id}/accept",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'quote_id' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"Idempotency-Key: <idempotency-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.useroutr.com/v1/funding_intents/{id}/accept"
payload := strings.NewReader("{\n \"quote_id\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Idempotency-Key", "<idempotency-key>")
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.useroutr.com/v1/funding_intents/{id}/accept")
.header("Idempotency-Key", "<idempotency-key>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"quote_id\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.useroutr.com/v1/funding_intents/{id}/accept")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Idempotency-Key"] = '<idempotency-key>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"quote_id\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"id": "fi_...",
"status": "created",
"destination": {
"rail": "stellar",
"asset": "crypto:USDC",
"target": {
"kind": "chain_address",
"address": "<string>",
"memo": "<string>"
}
},
"created_at": "2023-11-07T05:31:56Z",
"expires_at": "2023-11-07T05:31:56Z",
"amount": {
"amount": "100.00",
"asset": "crypto:USDC"
},
"pay_to": [
{
"rail": "stellar",
"asset": "crypto:USDC",
"address": "<string>",
"memo": "<string>"
}
],
"reference": "<string>",
"metadata": {},
"checkout_url": "<string>",
"failure": {
"code": "amount_below_minimum",
"message": "<string>",
"retryable": true
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"type": "validation_error",
"request_id": "<string>",
"param": "<string>",
"retryable": true,
"retry_after_seconds": 123,
"docs_url": "<string>"
}
}Funding intents
Accept a quote, pinning its route
POST
/
funding_intents
/
{id}
/
accept
Accept a quote, pinning its route
curl --request POST \
--url https://api.useroutr.com/v1/funding_intents/{id}/accept \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: <idempotency-key>' \
--data '
{
"quote_id": "<string>"
}
'import requests
url = "https://api.useroutr.com/v1/funding_intents/{id}/accept"
payload = { "quote_id": "<string>" }
headers = {
"Idempotency-Key": "<idempotency-key>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'Idempotency-Key': '<idempotency-key>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({quote_id: '<string>'})
};
fetch('https://api.useroutr.com/v1/funding_intents/{id}/accept', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.useroutr.com/v1/funding_intents/{id}/accept",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'quote_id' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"Idempotency-Key: <idempotency-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.useroutr.com/v1/funding_intents/{id}/accept"
payload := strings.NewReader("{\n \"quote_id\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Idempotency-Key", "<idempotency-key>")
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.useroutr.com/v1/funding_intents/{id}/accept")
.header("Idempotency-Key", "<idempotency-key>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"quote_id\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.useroutr.com/v1/funding_intents/{id}/accept")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Idempotency-Key"] = '<idempotency-key>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"quote_id\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"id": "fi_...",
"status": "created",
"destination": {
"rail": "stellar",
"asset": "crypto:USDC",
"target": {
"kind": "chain_address",
"address": "<string>",
"memo": "<string>"
}
},
"created_at": "2023-11-07T05:31:56Z",
"expires_at": "2023-11-07T05:31:56Z",
"amount": {
"amount": "100.00",
"asset": "crypto:USDC"
},
"pay_to": [
{
"rail": "stellar",
"asset": "crypto:USDC",
"address": "<string>",
"memo": "<string>"
}
],
"reference": "<string>",
"metadata": {},
"checkout_url": "<string>",
"failure": {
"code": "amount_below_minimum",
"message": "<string>",
"retryable": true
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"type": "validation_error",
"request_id": "<string>",
"param": "<string>",
"retryable": true,
"retry_after_seconds": 123,
"docs_url": "<string>"
}
}Authorizations
Server-side only. Never ships to a browser.
Headers
Required on every mutating request. Absent is a 400.
Required string length:
8 - 200Path Parameters
Body
application/json
Response
The intent, now awaiting payment, with pay instructions.
Example:
"fi_..."
Route shape never appears here. Values may be added in a minor version, so every client switch must carry a default.
Available options:
created, quoted, awaiting_payment, payment_received, in_review, settling, settled, partially_settled, undeliverable, failed, refund_pending, refunded, refund_failed, expired, canceled One shape for a bank account, a blockchain address, a card, and an internal balance. Used for both sources and destinations: direction is a property of the transfer, never of the type.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Where the payer should send. One entry per rail that can receive.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
⌘I

