Create a payment request
curl --request POST \
--url https://api.plane.com/v1/payment-requests \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"worker": "<string>",
"amount": "<string>",
"currency": "<string>",
"reference": "<string>",
"note": "<string>",
"period": {}
}
'import requests
url = "https://api.plane.com/v1/payment-requests"
payload = {
"worker": "<string>",
"amount": "<string>",
"currency": "<string>",
"reference": "<string>",
"note": "<string>",
"period": {}
}
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({
worker: '<string>',
amount: '<string>',
currency: '<string>',
reference: '<string>',
note: '<string>',
period: {}
})
};
fetch('https://api.plane.com/v1/payment-requests', 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.plane.com/v1/payment-requests",
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([
'worker' => '<string>',
'amount' => '<string>',
'currency' => '<string>',
'reference' => '<string>',
'note' => '<string>',
'period' => [
]
]),
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.plane.com/v1/payment-requests"
payload := strings.NewReader("{\n \"worker\": \"<string>\",\n \"amount\": \"<string>\",\n \"currency\": \"<string>\",\n \"reference\": \"<string>\",\n \"note\": \"<string>\",\n \"period\": {}\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.plane.com/v1/payment-requests")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"worker\": \"<string>\",\n \"amount\": \"<string>\",\n \"currency\": \"<string>\",\n \"reference\": \"<string>\",\n \"note\": \"<string>\",\n \"period\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.plane.com/v1/payment-requests")
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 \"worker\": \"<string>\",\n \"amount\": \"<string>\",\n \"currency\": \"<string>\",\n \"reference\": \"<string>\",\n \"note\": \"<string>\",\n \"period\": {}\n}"
response = http.request(request)
puts response.read_body{
"id": "ptr_ogdEjSnSqNYxtW1sd3pC3hFX"
}
Payment Requests
Create a payment request
Create a contractor payment request in your Plane workspace.
POST
/
v1
/
payment-requests
Create a payment request
curl --request POST \
--url https://api.plane.com/v1/payment-requests \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"worker": "<string>",
"amount": "<string>",
"currency": "<string>",
"reference": "<string>",
"note": "<string>",
"period": {}
}
'import requests
url = "https://api.plane.com/v1/payment-requests"
payload = {
"worker": "<string>",
"amount": "<string>",
"currency": "<string>",
"reference": "<string>",
"note": "<string>",
"period": {}
}
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({
worker: '<string>',
amount: '<string>',
currency: '<string>',
reference: '<string>',
note: '<string>',
period: {}
})
};
fetch('https://api.plane.com/v1/payment-requests', 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.plane.com/v1/payment-requests",
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([
'worker' => '<string>',
'amount' => '<string>',
'currency' => '<string>',
'reference' => '<string>',
'note' => '<string>',
'period' => [
]
]),
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.plane.com/v1/payment-requests"
payload := strings.NewReader("{\n \"worker\": \"<string>\",\n \"amount\": \"<string>\",\n \"currency\": \"<string>\",\n \"reference\": \"<string>\",\n \"note\": \"<string>\",\n \"period\": {}\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.plane.com/v1/payment-requests")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"worker\": \"<string>\",\n \"amount\": \"<string>\",\n \"currency\": \"<string>\",\n \"reference\": \"<string>\",\n \"note\": \"<string>\",\n \"period\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.plane.com/v1/payment-requests")
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 \"worker\": \"<string>\",\n \"amount\": \"<string>\",\n \"currency\": \"<string>\",\n \"reference\": \"<string>\",\n \"note\": \"<string>\",\n \"period\": {}\n}"
response = http.request(request)
puts response.read_body{
"id": "ptr_ogdEjSnSqNYxtW1sd3pC3hFX"
}
Parameters
string
required
The ID of the worker submitting or receiving this payment request.
string
required
The requested amount in decimal format.
string
required
Three-letter ISO currency code, in uppercase.
string
Optional external reference, such as an invoice number.
string
Optional memo attached to the request.
object
Returns
Returns the created payment request ID. Retrieve the full Payment Request object with Get a payment request.{
"id": "ptr_ogdEjSnSqNYxtW1sd3pC3hFX"
}
Was this page helpful?
⌘I