Update Invoice PDF
curl --request POST \
--url https://api.unibee.dev/merchant/invoice/pdf_update \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"invoiceId": "<string>",
"issueAddress": "<string>",
"issueCompanyName": "<string>",
"issueRegNumber": "<string>",
"issueVatNumber": "<string>",
"localizedCurrency": "<string>",
"localizedExchangeRate": 123,
"localizedExchangeRateDescription": 123,
"metadata": {},
"sendUserEmail": false,
"showDetailItem": false,
"template": "<string>"
}
'import requests
url = "https://api.unibee.dev/merchant/invoice/pdf_update"
payload = {
"invoiceId": "<string>",
"issueAddress": "<string>",
"issueCompanyName": "<string>",
"issueRegNumber": "<string>",
"issueVatNumber": "<string>",
"localizedCurrency": "<string>",
"localizedExchangeRate": 123,
"localizedExchangeRateDescription": 123,
"metadata": {},
"sendUserEmail": False,
"showDetailItem": False,
"template": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
invoiceId: '<string>',
issueAddress: '<string>',
issueCompanyName: '<string>',
issueRegNumber: '<string>',
issueVatNumber: '<string>',
localizedCurrency: '<string>',
localizedExchangeRate: 123,
localizedExchangeRateDescription: 123,
metadata: {},
sendUserEmail: false,
showDetailItem: false,
template: '<string>'
})
};
fetch('https://api.unibee.dev/merchant/invoice/pdf_update', 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.unibee.dev/merchant/invoice/pdf_update",
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([
'invoiceId' => '<string>',
'issueAddress' => '<string>',
'issueCompanyName' => '<string>',
'issueRegNumber' => '<string>',
'issueVatNumber' => '<string>',
'localizedCurrency' => '<string>',
'localizedExchangeRate' => 123,
'localizedExchangeRateDescription' => 123,
'metadata' => [
],
'sendUserEmail' => false,
'showDetailItem' => false,
'template' => '<string>'
]),
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://api.unibee.dev/merchant/invoice/pdf_update"
payload := strings.NewReader("{\n \"invoiceId\": \"<string>\",\n \"issueAddress\": \"<string>\",\n \"issueCompanyName\": \"<string>\",\n \"issueRegNumber\": \"<string>\",\n \"issueVatNumber\": \"<string>\",\n \"localizedCurrency\": \"<string>\",\n \"localizedExchangeRate\": 123,\n \"localizedExchangeRateDescription\": 123,\n \"metadata\": {},\n \"sendUserEmail\": false,\n \"showDetailItem\": false,\n \"template\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", 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.post("https://api.unibee.dev/merchant/invoice/pdf_update")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"invoiceId\": \"<string>\",\n \"issueAddress\": \"<string>\",\n \"issueCompanyName\": \"<string>\",\n \"issueRegNumber\": \"<string>\",\n \"issueVatNumber\": \"<string>\",\n \"localizedCurrency\": \"<string>\",\n \"localizedExchangeRate\": 123,\n \"localizedExchangeRateDescription\": 123,\n \"metadata\": {},\n \"sendUserEmail\": false,\n \"showDetailItem\": false,\n \"template\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.unibee.dev/merchant/invoice/pdf_update")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"invoiceId\": \"<string>\",\n \"issueAddress\": \"<string>\",\n \"issueCompanyName\": \"<string>\",\n \"issueRegNumber\": \"<string>\",\n \"issueVatNumber\": \"<string>\",\n \"localizedCurrency\": \"<string>\",\n \"localizedExchangeRate\": 123,\n \"localizedExchangeRateDescription\": 123,\n \"metadata\": {},\n \"sendUserEmail\": false,\n \"showDetailItem\": false,\n \"template\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"code": 123,
"data": {},
"merchantId": 123,
"message": "<string>",
"redirect": "<string>",
"requestId": "<string>"
}Invoice
Update Invoice PDF
POST
/
merchant
/
invoice
/
pdf_update
Update Invoice PDF
curl --request POST \
--url https://api.unibee.dev/merchant/invoice/pdf_update \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"invoiceId": "<string>",
"issueAddress": "<string>",
"issueCompanyName": "<string>",
"issueRegNumber": "<string>",
"issueVatNumber": "<string>",
"localizedCurrency": "<string>",
"localizedExchangeRate": 123,
"localizedExchangeRateDescription": 123,
"metadata": {},
"sendUserEmail": false,
"showDetailItem": false,
"template": "<string>"
}
'import requests
url = "https://api.unibee.dev/merchant/invoice/pdf_update"
payload = {
"invoiceId": "<string>",
"issueAddress": "<string>",
"issueCompanyName": "<string>",
"issueRegNumber": "<string>",
"issueVatNumber": "<string>",
"localizedCurrency": "<string>",
"localizedExchangeRate": 123,
"localizedExchangeRateDescription": 123,
"metadata": {},
"sendUserEmail": False,
"showDetailItem": False,
"template": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
invoiceId: '<string>',
issueAddress: '<string>',
issueCompanyName: '<string>',
issueRegNumber: '<string>',
issueVatNumber: '<string>',
localizedCurrency: '<string>',
localizedExchangeRate: 123,
localizedExchangeRateDescription: 123,
metadata: {},
sendUserEmail: false,
showDetailItem: false,
template: '<string>'
})
};
fetch('https://api.unibee.dev/merchant/invoice/pdf_update', 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.unibee.dev/merchant/invoice/pdf_update",
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([
'invoiceId' => '<string>',
'issueAddress' => '<string>',
'issueCompanyName' => '<string>',
'issueRegNumber' => '<string>',
'issueVatNumber' => '<string>',
'localizedCurrency' => '<string>',
'localizedExchangeRate' => 123,
'localizedExchangeRateDescription' => 123,
'metadata' => [
],
'sendUserEmail' => false,
'showDetailItem' => false,
'template' => '<string>'
]),
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://api.unibee.dev/merchant/invoice/pdf_update"
payload := strings.NewReader("{\n \"invoiceId\": \"<string>\",\n \"issueAddress\": \"<string>\",\n \"issueCompanyName\": \"<string>\",\n \"issueRegNumber\": \"<string>\",\n \"issueVatNumber\": \"<string>\",\n \"localizedCurrency\": \"<string>\",\n \"localizedExchangeRate\": 123,\n \"localizedExchangeRateDescription\": 123,\n \"metadata\": {},\n \"sendUserEmail\": false,\n \"showDetailItem\": false,\n \"template\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", 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.post("https://api.unibee.dev/merchant/invoice/pdf_update")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"invoiceId\": \"<string>\",\n \"issueAddress\": \"<string>\",\n \"issueCompanyName\": \"<string>\",\n \"issueRegNumber\": \"<string>\",\n \"issueVatNumber\": \"<string>\",\n \"localizedCurrency\": \"<string>\",\n \"localizedExchangeRate\": 123,\n \"localizedExchangeRateDescription\": 123,\n \"metadata\": {},\n \"sendUserEmail\": false,\n \"showDetailItem\": false,\n \"template\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.unibee.dev/merchant/invoice/pdf_update")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"invoiceId\": \"<string>\",\n \"issueAddress\": \"<string>\",\n \"issueCompanyName\": \"<string>\",\n \"issueRegNumber\": \"<string>\",\n \"issueVatNumber\": \"<string>\",\n \"localizedCurrency\": \"<string>\",\n \"localizedExchangeRate\": 123,\n \"localizedExchangeRateDescription\": 123,\n \"metadata\": {},\n \"sendUserEmail\": false,\n \"showDetailItem\": false,\n \"template\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"code": 123,
"data": {},
"merchantId": 123,
"message": "<string>",
"redirect": "<string>",
"requestId": "<string>"
}Endpoint Overview
POSThttps://api.unibee.dev/merchant/invoice/pdf_update
Update Invoice PDF
Authorization
All UniBee Merchant API requests require authentication via API key.| Header | Required | Description |
|---|---|---|
Authorization | Yes | Bearer <your_api_key> |
Content-Type | Yes | application/json (for request body) |
Parameters
Parameters for this endpoint are listed below. The schema is also shown in the Try it panel.Request body
| Name | Type | Required | Description |
|---|---|---|---|
invoiceId | string | Yes | The unique id of invoice |
issueAddress | string | No | IssueAddress |
issueCompanyName | string | No | IssueCompanyName |
issueRegNumber | string | No | IssueRegNumber |
issueVatNumber | string | No | IssueVatNumber |
localizedCurrency | string | No | LocalizedCurrency, To display localized currency amount |
localizedExchangeRate | number | No | LocalizedExchangeRate, exchange rate must set while LocalizedCurrency enabled |
localizedExchangeRateDescription | number | No | LocalizedExchangeRateDescription |
metadata | object | No | Metadata,Map |
sendUserEmail | boolean | No | Whether sen invoice email to user or not,default false |
showDetailItem | boolean | No | ShowDetailItem, whether to display detail item information in pdf generate, unitAmount, quantity, etc. |
template | string | No | Template |
Request examples
cURL
curl -X POST "https://api.unibee.dev/merchant/invoice/pdf_update" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"invoiceId": "id_example",
"issueAddress": "",
"issueCompanyName": "",
"issueRegNumber": "",
"issueVatNumber": "",
"localizedCurrency": "",
"localizedExchangeRate": "",
"localizedExchangeRateDescription": "",
"metadata": {},
"sendUserEmail": "user@example.com",
"showDetailItem": false,
"template": ""
}'
Sandbox
curl -X POST "https://api-sandbox.unibee.top/merchant/invoice/pdf_update" \
-H "Authorization: Bearer YOUR_SANDBOX_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"invoiceId": "id_example",
"issueAddress": "",
"issueCompanyName": "",
"issueRegNumber": "",
"issueVatNumber": "",
"localizedCurrency": "",
"localizedExchangeRate": "",
"localizedExchangeRateDescription": "",
"metadata": {},
"sendUserEmail": "user@example.com",
"showDetailItem": false,
"template": ""
}'
Response
Success responses return a JSON envelope withcode, data, message, redirect, and requestId. code 0 indicates success. The response schema for this endpoint is shown below.
Error handling
| HTTP status | Meaning |
|---|---|
| 400 | Bad request — invalid or missing parameters. Check message in the body. |
| 401 | Unauthorized — missing or invalid API key. |
| 404 | Not found — invalid path or resource. |
| 500 | Server error — retry with backoff. |
code in the response body is non-zero, check message for details. Use requestId when contacting support.Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
application/json
The unique id of invoice
IssueAddress
IssueCompanyName
IssueRegNumber
IssueVatNumber
LocalizedCurrency, To display localized currency amount
LocalizedExchangeRate, exchange rate must set while LocalizedCurrency enabled
LocalizedExchangeRateDescription
Metadata,Map
Show child attributes
Show child attributes
Whether sen invoice email to user or not,default false
ShowDetailItem, whether to display detail item information in pdf generate, unitAmount, quantity, etc.
Template
⌘I

