curl --request PATCH \
--url https://thirdparty.qonto.com/v2/quotes/{id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"upload_id": "4d5418bb-bd0d-4df4-865c-c07afab8bb48",
"issue_date": "2024-01-15",
"expiry_date": "2024-02-15",
"number": "Q-2024-001",
"terms_and_conditions": "<string>",
"currency": "EUR",
"header": "<string>",
"footer": "<string>",
"settings": {
"vat_number": "<string>",
"district_court": "<string>",
"company_leadership": "<string>",
"commercial_register_number": "<string>",
"tax_number": "<string>"
},
"discount": {
"type": "percentage",
"value": "0.1"
},
"items": [
{
"title": "<string>",
"currency": "EUR",
"quantity": "2.5",
"unit_price": {
"value": "100.00",
"currency": "EUR"
},
"vat_rate": "0.2",
"description": "<string>",
"unit": "hour",
"discount": {
"value": "0.1"
},
"vat_exemption_reason": "N1"
}
],
"welfare_fund": {
"type": "TC22",
"rate": "0.1"
},
"withholding_tax": {
"reason": "RT01",
"rate": "0.1",
"payment_reason": "M1"
},
"stamp_duty_amount": "0.1"
}
'import requests
url = "https://thirdparty.qonto.com/v2/quotes/{id}"
payload = {
"upload_id": "4d5418bb-bd0d-4df4-865c-c07afab8bb48",
"issue_date": "2024-01-15",
"expiry_date": "2024-02-15",
"number": "Q-2024-001",
"terms_and_conditions": "<string>",
"currency": "EUR",
"header": "<string>",
"footer": "<string>",
"settings": {
"vat_number": "<string>",
"district_court": "<string>",
"company_leadership": "<string>",
"commercial_register_number": "<string>",
"tax_number": "<string>"
},
"discount": {
"type": "percentage",
"value": "0.1"
},
"items": [
{
"title": "<string>",
"currency": "EUR",
"quantity": "2.5",
"unit_price": {
"value": "100.00",
"currency": "EUR"
},
"vat_rate": "0.2",
"description": "<string>",
"unit": "hour",
"discount": { "value": "0.1" },
"vat_exemption_reason": "N1"
}
],
"welfare_fund": {
"type": "TC22",
"rate": "0.1"
},
"withholding_tax": {
"reason": "RT01",
"rate": "0.1",
"payment_reason": "M1"
},
"stamp_duty_amount": "0.1"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
upload_id: '4d5418bb-bd0d-4df4-865c-c07afab8bb48',
issue_date: '2024-01-15',
expiry_date: '2024-02-15',
number: 'Q-2024-001',
terms_and_conditions: '<string>',
currency: 'EUR',
header: '<string>',
footer: '<string>',
settings: {
vat_number: '<string>',
district_court: '<string>',
company_leadership: '<string>',
commercial_register_number: '<string>',
tax_number: '<string>'
},
discount: {type: 'percentage', value: '0.1'},
items: [
{
title: '<string>',
currency: 'EUR',
quantity: '2.5',
unit_price: {value: '100.00', currency: 'EUR'},
vat_rate: '0.2',
description: '<string>',
unit: 'hour',
discount: {value: '0.1'},
vat_exemption_reason: 'N1'
}
],
welfare_fund: {type: 'TC22', rate: '0.1'},
withholding_tax: {reason: 'RT01', rate: '0.1', payment_reason: 'M1'},
stamp_duty_amount: '0.1'
})
};
fetch('https://thirdparty.qonto.com/v2/quotes/{id}', 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://thirdparty.qonto.com/v2/quotes/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'upload_id' => '4d5418bb-bd0d-4df4-865c-c07afab8bb48',
'issue_date' => '2024-01-15',
'expiry_date' => '2024-02-15',
'number' => 'Q-2024-001',
'terms_and_conditions' => '<string>',
'currency' => 'EUR',
'header' => '<string>',
'footer' => '<string>',
'settings' => [
'vat_number' => '<string>',
'district_court' => '<string>',
'company_leadership' => '<string>',
'commercial_register_number' => '<string>',
'tax_number' => '<string>'
],
'discount' => [
'type' => 'percentage',
'value' => '0.1'
],
'items' => [
[
'title' => '<string>',
'currency' => 'EUR',
'quantity' => '2.5',
'unit_price' => [
'value' => '100.00',
'currency' => 'EUR'
],
'vat_rate' => '0.2',
'description' => '<string>',
'unit' => 'hour',
'discount' => [
'value' => '0.1'
],
'vat_exemption_reason' => 'N1'
]
],
'welfare_fund' => [
'type' => 'TC22',
'rate' => '0.1'
],
'withholding_tax' => [
'reason' => 'RT01',
'rate' => '0.1',
'payment_reason' => 'M1'
],
'stamp_duty_amount' => '0.1'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$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://thirdparty.qonto.com/v2/quotes/{id}"
payload := strings.NewReader("{\n \"upload_id\": \"4d5418bb-bd0d-4df4-865c-c07afab8bb48\",\n \"issue_date\": \"2024-01-15\",\n \"expiry_date\": \"2024-02-15\",\n \"number\": \"Q-2024-001\",\n \"terms_and_conditions\": \"<string>\",\n \"currency\": \"EUR\",\n \"header\": \"<string>\",\n \"footer\": \"<string>\",\n \"settings\": {\n \"vat_number\": \"<string>\",\n \"district_court\": \"<string>\",\n \"company_leadership\": \"<string>\",\n \"commercial_register_number\": \"<string>\",\n \"tax_number\": \"<string>\"\n },\n \"discount\": {\n \"type\": \"percentage\",\n \"value\": \"0.1\"\n },\n \"items\": [\n {\n \"title\": \"<string>\",\n \"currency\": \"EUR\",\n \"quantity\": \"2.5\",\n \"unit_price\": {\n \"value\": \"100.00\",\n \"currency\": \"EUR\"\n },\n \"vat_rate\": \"0.2\",\n \"description\": \"<string>\",\n \"unit\": \"hour\",\n \"discount\": {\n \"value\": \"0.1\"\n },\n \"vat_exemption_reason\": \"N1\"\n }\n ],\n \"welfare_fund\": {\n \"type\": \"TC22\",\n \"rate\": \"0.1\"\n },\n \"withholding_tax\": {\n \"reason\": \"RT01\",\n \"rate\": \"0.1\",\n \"payment_reason\": \"M1\"\n },\n \"stamp_duty_amount\": \"0.1\"\n}")
req, _ := http.NewRequest("PATCH", url, payload)
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.patch("https://thirdparty.qonto.com/v2/quotes/{id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"upload_id\": \"4d5418bb-bd0d-4df4-865c-c07afab8bb48\",\n \"issue_date\": \"2024-01-15\",\n \"expiry_date\": \"2024-02-15\",\n \"number\": \"Q-2024-001\",\n \"terms_and_conditions\": \"<string>\",\n \"currency\": \"EUR\",\n \"header\": \"<string>\",\n \"footer\": \"<string>\",\n \"settings\": {\n \"vat_number\": \"<string>\",\n \"district_court\": \"<string>\",\n \"company_leadership\": \"<string>\",\n \"commercial_register_number\": \"<string>\",\n \"tax_number\": \"<string>\"\n },\n \"discount\": {\n \"type\": \"percentage\",\n \"value\": \"0.1\"\n },\n \"items\": [\n {\n \"title\": \"<string>\",\n \"currency\": \"EUR\",\n \"quantity\": \"2.5\",\n \"unit_price\": {\n \"value\": \"100.00\",\n \"currency\": \"EUR\"\n },\n \"vat_rate\": \"0.2\",\n \"description\": \"<string>\",\n \"unit\": \"hour\",\n \"discount\": {\n \"value\": \"0.1\"\n },\n \"vat_exemption_reason\": \"N1\"\n }\n ],\n \"welfare_fund\": {\n \"type\": \"TC22\",\n \"rate\": \"0.1\"\n },\n \"withholding_tax\": {\n \"reason\": \"RT01\",\n \"rate\": \"0.1\",\n \"payment_reason\": \"M1\"\n },\n \"stamp_duty_amount\": \"0.1\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://thirdparty.qonto.com/v2/quotes/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"upload_id\": \"4d5418bb-bd0d-4df4-865c-c07afab8bb48\",\n \"issue_date\": \"2024-01-15\",\n \"expiry_date\": \"2024-02-15\",\n \"number\": \"Q-2024-001\",\n \"terms_and_conditions\": \"<string>\",\n \"currency\": \"EUR\",\n \"header\": \"<string>\",\n \"footer\": \"<string>\",\n \"settings\": {\n \"vat_number\": \"<string>\",\n \"district_court\": \"<string>\",\n \"company_leadership\": \"<string>\",\n \"commercial_register_number\": \"<string>\",\n \"tax_number\": \"<string>\"\n },\n \"discount\": {\n \"type\": \"percentage\",\n \"value\": \"0.1\"\n },\n \"items\": [\n {\n \"title\": \"<string>\",\n \"currency\": \"EUR\",\n \"quantity\": \"2.5\",\n \"unit_price\": {\n \"value\": \"100.00\",\n \"currency\": \"EUR\"\n },\n \"vat_rate\": \"0.2\",\n \"description\": \"<string>\",\n \"unit\": \"hour\",\n \"discount\": {\n \"value\": \"0.1\"\n },\n \"vat_exemption_reason\": \"N1\"\n }\n ],\n \"welfare_fund\": {\n \"type\": \"TC22\",\n \"rate\": \"0.1\"\n },\n \"withholding_tax\": {\n \"reason\": \"RT01\",\n \"rate\": \"0.1\",\n \"payment_reason\": \"M1\"\n },\n \"stamp_duty_amount\": \"0.1\"\n}"
response = http.request(request)
puts response.read_body{
"quote": {
"id": "4d5418bb-bd0d-4df4-865c-c07afab8bb48",
"organization_id": "4d5418bb-bd0d-4df4-865c-c07afab8bb48",
"number": "Q-2024-001",
"status": "pending_approval",
"currency": "EUR",
"total_amount": {
"value": "240.00",
"currency": "EUR"
},
"total_amount_cents": 24000,
"vat_amount": {
"value": "40.00",
"currency": "EUR"
},
"vat_amount_cents": 4000,
"issue_date": "2024-01-15",
"expiry_date": "2024-02-15",
"created_at": "2024-01-15T10:30:00Z",
"items": [
{
"title": "Consulting services",
"description": "Monthly consulting services",
"quantity": "2.5",
"unit": "hour",
"vat_rate": "0.2",
"vat_exemption_reason": "N1",
"unit_price": {
"value": "100.00",
"currency": "EUR"
},
"unit_price_cents": 10000,
"total_amount": {
"value": "200.00",
"currency": "EUR"
},
"total_amount_cents": 20000,
"total_vat": {
"value": "40.00",
"currency": "EUR"
},
"total_vat_cents": 4000,
"subtotal": {
"value": "160.00",
"currency": "EUR"
},
"subtotal_cents": 16000,
"discount": {
"type": "percentage",
"value": "<string>",
"amount": {
"value": "<string>",
"currency": "<string>"
},
"amount_cents": 123
}
}
],
"client": {
"id": "33v418bb-bd0d-4df4-865c-c07afab8bb48",
"name": "McDonald's",
"first_name": "Jane",
"last_name": "Doe",
"type": "individual",
"email": "client@qonto.com",
"vat_number": "FR32123456789",
"tax_identification_number": "123456789",
"address": "1 place de l’Opéra",
"city": "Paris",
"zip_code": "75010",
"province_code": "<string>",
"country_code": "fr",
"recipient_code": "<string>",
"locale": "fr",
"billing_address": {
"street_address": "123 Main Street",
"city": "Paris",
"zip_code": "75010",
"province_code": "<string>",
"country_code": "FR"
},
"delivery_address": {
"street_address": "123 Main Street",
"city": "Paris",
"zip_code": "75010",
"province_code": "<string>",
"country_code": "FR"
}
},
"organization": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"legal_name": "<string>",
"legal_number": "<string>",
"legal_country": "<string>",
"address_line_1": "<string>",
"address_line_2": "<string>",
"address_zipcode": "<string>",
"address_city": "<string>",
"address_country": "<string>",
"company_leadership": "Jan Mueller",
"district_court": "Munich",
"commercial_register_number": "HRB12345B",
"vat_number": "FR123456789",
"tax_number": "123/123/1234",
"legal_capital_share": {
"value": "10000.00",
"currency": "EUR"
},
"transaction_type": "goods",
"vat_payment_condition": "on_receipts"
},
"attachment_id": "4d5418bb-bd0d-4df4-865c-c07afab8bb48",
"quote_url": "https://portal.qonto.com/quotes/00000000-0000-0000-0000-000000000000",
"electronic_signature_url": "https://pay.qonto.com/quotes/00000000-0000-0000-0000-000000000000/signing/00000000-0000-0000-0000-000000000001",
"contact_email": "contact@qonto.com",
"terms_and_conditions": "This is an example.",
"header": "This is an example.",
"footer": "This is an example.",
"discount": {
"type": "percentage",
"value": "10",
"amount": {
"value": "20.00",
"currency": "EUR"
},
"amount_cents": 2000
},
"approved_at": "2024-01-16T14:22:00Z",
"canceled_at": "2024-01-17T09:15:00Z",
"welfare_fund": {
"type": "TC22",
"rate": "0.1",
"amount": "10.00"
},
"withholding_tax": {
"reason": "RT01",
"rate": "0.1",
"amount": "10.00",
"payment_reason": "M1"
},
"stamp_duty_amount": "0.10",
"invoice_ids": [
"4d5418bb-bd0d-4df4-865c-c07afab8bb48"
]
}
}Update a quote
OAuth scope: client_invoice.write
Updates the quote identified by the id path parameter.
curl --request PATCH \
--url https://thirdparty.qonto.com/v2/quotes/{id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"upload_id": "4d5418bb-bd0d-4df4-865c-c07afab8bb48",
"issue_date": "2024-01-15",
"expiry_date": "2024-02-15",
"number": "Q-2024-001",
"terms_and_conditions": "<string>",
"currency": "EUR",
"header": "<string>",
"footer": "<string>",
"settings": {
"vat_number": "<string>",
"district_court": "<string>",
"company_leadership": "<string>",
"commercial_register_number": "<string>",
"tax_number": "<string>"
},
"discount": {
"type": "percentage",
"value": "0.1"
},
"items": [
{
"title": "<string>",
"currency": "EUR",
"quantity": "2.5",
"unit_price": {
"value": "100.00",
"currency": "EUR"
},
"vat_rate": "0.2",
"description": "<string>",
"unit": "hour",
"discount": {
"value": "0.1"
},
"vat_exemption_reason": "N1"
}
],
"welfare_fund": {
"type": "TC22",
"rate": "0.1"
},
"withholding_tax": {
"reason": "RT01",
"rate": "0.1",
"payment_reason": "M1"
},
"stamp_duty_amount": "0.1"
}
'import requests
url = "https://thirdparty.qonto.com/v2/quotes/{id}"
payload = {
"upload_id": "4d5418bb-bd0d-4df4-865c-c07afab8bb48",
"issue_date": "2024-01-15",
"expiry_date": "2024-02-15",
"number": "Q-2024-001",
"terms_and_conditions": "<string>",
"currency": "EUR",
"header": "<string>",
"footer": "<string>",
"settings": {
"vat_number": "<string>",
"district_court": "<string>",
"company_leadership": "<string>",
"commercial_register_number": "<string>",
"tax_number": "<string>"
},
"discount": {
"type": "percentage",
"value": "0.1"
},
"items": [
{
"title": "<string>",
"currency": "EUR",
"quantity": "2.5",
"unit_price": {
"value": "100.00",
"currency": "EUR"
},
"vat_rate": "0.2",
"description": "<string>",
"unit": "hour",
"discount": { "value": "0.1" },
"vat_exemption_reason": "N1"
}
],
"welfare_fund": {
"type": "TC22",
"rate": "0.1"
},
"withholding_tax": {
"reason": "RT01",
"rate": "0.1",
"payment_reason": "M1"
},
"stamp_duty_amount": "0.1"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
upload_id: '4d5418bb-bd0d-4df4-865c-c07afab8bb48',
issue_date: '2024-01-15',
expiry_date: '2024-02-15',
number: 'Q-2024-001',
terms_and_conditions: '<string>',
currency: 'EUR',
header: '<string>',
footer: '<string>',
settings: {
vat_number: '<string>',
district_court: '<string>',
company_leadership: '<string>',
commercial_register_number: '<string>',
tax_number: '<string>'
},
discount: {type: 'percentage', value: '0.1'},
items: [
{
title: '<string>',
currency: 'EUR',
quantity: '2.5',
unit_price: {value: '100.00', currency: 'EUR'},
vat_rate: '0.2',
description: '<string>',
unit: 'hour',
discount: {value: '0.1'},
vat_exemption_reason: 'N1'
}
],
welfare_fund: {type: 'TC22', rate: '0.1'},
withholding_tax: {reason: 'RT01', rate: '0.1', payment_reason: 'M1'},
stamp_duty_amount: '0.1'
})
};
fetch('https://thirdparty.qonto.com/v2/quotes/{id}', 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://thirdparty.qonto.com/v2/quotes/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'upload_id' => '4d5418bb-bd0d-4df4-865c-c07afab8bb48',
'issue_date' => '2024-01-15',
'expiry_date' => '2024-02-15',
'number' => 'Q-2024-001',
'terms_and_conditions' => '<string>',
'currency' => 'EUR',
'header' => '<string>',
'footer' => '<string>',
'settings' => [
'vat_number' => '<string>',
'district_court' => '<string>',
'company_leadership' => '<string>',
'commercial_register_number' => '<string>',
'tax_number' => '<string>'
],
'discount' => [
'type' => 'percentage',
'value' => '0.1'
],
'items' => [
[
'title' => '<string>',
'currency' => 'EUR',
'quantity' => '2.5',
'unit_price' => [
'value' => '100.00',
'currency' => 'EUR'
],
'vat_rate' => '0.2',
'description' => '<string>',
'unit' => 'hour',
'discount' => [
'value' => '0.1'
],
'vat_exemption_reason' => 'N1'
]
],
'welfare_fund' => [
'type' => 'TC22',
'rate' => '0.1'
],
'withholding_tax' => [
'reason' => 'RT01',
'rate' => '0.1',
'payment_reason' => 'M1'
],
'stamp_duty_amount' => '0.1'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$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://thirdparty.qonto.com/v2/quotes/{id}"
payload := strings.NewReader("{\n \"upload_id\": \"4d5418bb-bd0d-4df4-865c-c07afab8bb48\",\n \"issue_date\": \"2024-01-15\",\n \"expiry_date\": \"2024-02-15\",\n \"number\": \"Q-2024-001\",\n \"terms_and_conditions\": \"<string>\",\n \"currency\": \"EUR\",\n \"header\": \"<string>\",\n \"footer\": \"<string>\",\n \"settings\": {\n \"vat_number\": \"<string>\",\n \"district_court\": \"<string>\",\n \"company_leadership\": \"<string>\",\n \"commercial_register_number\": \"<string>\",\n \"tax_number\": \"<string>\"\n },\n \"discount\": {\n \"type\": \"percentage\",\n \"value\": \"0.1\"\n },\n \"items\": [\n {\n \"title\": \"<string>\",\n \"currency\": \"EUR\",\n \"quantity\": \"2.5\",\n \"unit_price\": {\n \"value\": \"100.00\",\n \"currency\": \"EUR\"\n },\n \"vat_rate\": \"0.2\",\n \"description\": \"<string>\",\n \"unit\": \"hour\",\n \"discount\": {\n \"value\": \"0.1\"\n },\n \"vat_exemption_reason\": \"N1\"\n }\n ],\n \"welfare_fund\": {\n \"type\": \"TC22\",\n \"rate\": \"0.1\"\n },\n \"withholding_tax\": {\n \"reason\": \"RT01\",\n \"rate\": \"0.1\",\n \"payment_reason\": \"M1\"\n },\n \"stamp_duty_amount\": \"0.1\"\n}")
req, _ := http.NewRequest("PATCH", url, payload)
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.patch("https://thirdparty.qonto.com/v2/quotes/{id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"upload_id\": \"4d5418bb-bd0d-4df4-865c-c07afab8bb48\",\n \"issue_date\": \"2024-01-15\",\n \"expiry_date\": \"2024-02-15\",\n \"number\": \"Q-2024-001\",\n \"terms_and_conditions\": \"<string>\",\n \"currency\": \"EUR\",\n \"header\": \"<string>\",\n \"footer\": \"<string>\",\n \"settings\": {\n \"vat_number\": \"<string>\",\n \"district_court\": \"<string>\",\n \"company_leadership\": \"<string>\",\n \"commercial_register_number\": \"<string>\",\n \"tax_number\": \"<string>\"\n },\n \"discount\": {\n \"type\": \"percentage\",\n \"value\": \"0.1\"\n },\n \"items\": [\n {\n \"title\": \"<string>\",\n \"currency\": \"EUR\",\n \"quantity\": \"2.5\",\n \"unit_price\": {\n \"value\": \"100.00\",\n \"currency\": \"EUR\"\n },\n \"vat_rate\": \"0.2\",\n \"description\": \"<string>\",\n \"unit\": \"hour\",\n \"discount\": {\n \"value\": \"0.1\"\n },\n \"vat_exemption_reason\": \"N1\"\n }\n ],\n \"welfare_fund\": {\n \"type\": \"TC22\",\n \"rate\": \"0.1\"\n },\n \"withholding_tax\": {\n \"reason\": \"RT01\",\n \"rate\": \"0.1\",\n \"payment_reason\": \"M1\"\n },\n \"stamp_duty_amount\": \"0.1\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://thirdparty.qonto.com/v2/quotes/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"upload_id\": \"4d5418bb-bd0d-4df4-865c-c07afab8bb48\",\n \"issue_date\": \"2024-01-15\",\n \"expiry_date\": \"2024-02-15\",\n \"number\": \"Q-2024-001\",\n \"terms_and_conditions\": \"<string>\",\n \"currency\": \"EUR\",\n \"header\": \"<string>\",\n \"footer\": \"<string>\",\n \"settings\": {\n \"vat_number\": \"<string>\",\n \"district_court\": \"<string>\",\n \"company_leadership\": \"<string>\",\n \"commercial_register_number\": \"<string>\",\n \"tax_number\": \"<string>\"\n },\n \"discount\": {\n \"type\": \"percentage\",\n \"value\": \"0.1\"\n },\n \"items\": [\n {\n \"title\": \"<string>\",\n \"currency\": \"EUR\",\n \"quantity\": \"2.5\",\n \"unit_price\": {\n \"value\": \"100.00\",\n \"currency\": \"EUR\"\n },\n \"vat_rate\": \"0.2\",\n \"description\": \"<string>\",\n \"unit\": \"hour\",\n \"discount\": {\n \"value\": \"0.1\"\n },\n \"vat_exemption_reason\": \"N1\"\n }\n ],\n \"welfare_fund\": {\n \"type\": \"TC22\",\n \"rate\": \"0.1\"\n },\n \"withholding_tax\": {\n \"reason\": \"RT01\",\n \"rate\": \"0.1\",\n \"payment_reason\": \"M1\"\n },\n \"stamp_duty_amount\": \"0.1\"\n}"
response = http.request(request)
puts response.read_body{
"quote": {
"id": "4d5418bb-bd0d-4df4-865c-c07afab8bb48",
"organization_id": "4d5418bb-bd0d-4df4-865c-c07afab8bb48",
"number": "Q-2024-001",
"status": "pending_approval",
"currency": "EUR",
"total_amount": {
"value": "240.00",
"currency": "EUR"
},
"total_amount_cents": 24000,
"vat_amount": {
"value": "40.00",
"currency": "EUR"
},
"vat_amount_cents": 4000,
"issue_date": "2024-01-15",
"expiry_date": "2024-02-15",
"created_at": "2024-01-15T10:30:00Z",
"items": [
{
"title": "Consulting services",
"description": "Monthly consulting services",
"quantity": "2.5",
"unit": "hour",
"vat_rate": "0.2",
"vat_exemption_reason": "N1",
"unit_price": {
"value": "100.00",
"currency": "EUR"
},
"unit_price_cents": 10000,
"total_amount": {
"value": "200.00",
"currency": "EUR"
},
"total_amount_cents": 20000,
"total_vat": {
"value": "40.00",
"currency": "EUR"
},
"total_vat_cents": 4000,
"subtotal": {
"value": "160.00",
"currency": "EUR"
},
"subtotal_cents": 16000,
"discount": {
"type": "percentage",
"value": "<string>",
"amount": {
"value": "<string>",
"currency": "<string>"
},
"amount_cents": 123
}
}
],
"client": {
"id": "33v418bb-bd0d-4df4-865c-c07afab8bb48",
"name": "McDonald's",
"first_name": "Jane",
"last_name": "Doe",
"type": "individual",
"email": "client@qonto.com",
"vat_number": "FR32123456789",
"tax_identification_number": "123456789",
"address": "1 place de l’Opéra",
"city": "Paris",
"zip_code": "75010",
"province_code": "<string>",
"country_code": "fr",
"recipient_code": "<string>",
"locale": "fr",
"billing_address": {
"street_address": "123 Main Street",
"city": "Paris",
"zip_code": "75010",
"province_code": "<string>",
"country_code": "FR"
},
"delivery_address": {
"street_address": "123 Main Street",
"city": "Paris",
"zip_code": "75010",
"province_code": "<string>",
"country_code": "FR"
}
},
"organization": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"legal_name": "<string>",
"legal_number": "<string>",
"legal_country": "<string>",
"address_line_1": "<string>",
"address_line_2": "<string>",
"address_zipcode": "<string>",
"address_city": "<string>",
"address_country": "<string>",
"company_leadership": "Jan Mueller",
"district_court": "Munich",
"commercial_register_number": "HRB12345B",
"vat_number": "FR123456789",
"tax_number": "123/123/1234",
"legal_capital_share": {
"value": "10000.00",
"currency": "EUR"
},
"transaction_type": "goods",
"vat_payment_condition": "on_receipts"
},
"attachment_id": "4d5418bb-bd0d-4df4-865c-c07afab8bb48",
"quote_url": "https://portal.qonto.com/quotes/00000000-0000-0000-0000-000000000000",
"electronic_signature_url": "https://pay.qonto.com/quotes/00000000-0000-0000-0000-000000000000/signing/00000000-0000-0000-0000-000000000001",
"contact_email": "contact@qonto.com",
"terms_and_conditions": "This is an example.",
"header": "This is an example.",
"footer": "This is an example.",
"discount": {
"type": "percentage",
"value": "10",
"amount": {
"value": "20.00",
"currency": "EUR"
},
"amount_cents": 2000
},
"approved_at": "2024-01-16T14:22:00Z",
"canceled_at": "2024-01-17T09:15:00Z",
"welfare_fund": {
"type": "TC22",
"rate": "0.1",
"amount": "10.00"
},
"withholding_tax": {
"reason": "RT01",
"rate": "0.1",
"amount": "10.00",
"payment_reason": "M1"
},
"stamp_duty_amount": "0.10",
"invoice_ids": [
"4d5418bb-bd0d-4df4-865c-c07afab8bb48"
]
}
}Authorizations
Bearer authorization header: Bearer <token>, where <token> is the access token received from the authorization server at the end of the OAuth 2.0 flow.
- Authorization URL
- https://oauth.qonto.com/oauth2/auth
- Token URL
- https://oauth.qonto.com/oauth2/token
- Refresh URL
- https://oauth.qonto.com/oauth2/token
Headers
Required only for Sandbox API requests; to get one, please sign up to the Developer Portal.
Path Parameters
The unique identifier of the quote.
Body
All fields are optional - only provided fields will be updated.
Optional ID of a previously uploaded file to attach to this quote. The upload must have been created using the POST /v2/client_invoices/uploads endpoint.
"4d5418bb-bd0d-4df4-865c-c07afab8bb48"
Issue date in YYYY-MM-DD format. Required: sending null or an empty string returns a 422 error.
"2024-01-15"
Expiry date in YYYY-MM-DD format. Required: sending null or an empty string returns a 422 error.
"2024-02-15"
Quote's number. Must be unique within the organization and is:
- required if automatic numbering is disabled for the authenticated organization;
- optional if automatic numbering is enabled for the authenticated organization (default setting). However, if provided, it will be used as the quote's number.
40"Q-2024-001"
Terms and conditions text
3000Currency code (ISO 4217, alpha 3)
"EUR"
Optional header text for the quote.
1000Optional footer text for the quote.
1000This collection of properties can be optionally used to temporarily override some of the organization's properties for this one invoice.
Show child attributes
Show child attributes
Global discount applied to the quote
Show child attributes
Show child attributes
Quote's line items
1Show child attributes
Show child attributes
Welfare fund details (Italian specific)
Show child attributes
Show child attributes
Withholding tax details (Italian specific)
Show child attributes
Show child attributes
Stamp duty amount (Italian specific)
"0.1"
Response
Returns the updated quote.
Show child attributes
Show child attributes
Was this page helpful?