Now, you'll want your script to create a POST request to https://api.queye.co/pay/create/index.php.
If you followed the previous steps, you would already have the vendor key and vendor secret. You'll also need a name for your product and you'll need to create a return URL, however this is optional. Create a product in one of our available currencies (see Supported Currencies) and name your price divided by 100 ($2.99 becomes "299", $41.76 becomes "4176").
Under the agreement you signed when you became a vendor, you cannot charge the user an additional fee for using Queye Pay over another service.
import requests
headers = {
"x-key": "your_vendor_key",
"x-secret": "your_secret_key",
"x-name": "Test Product",
"x-currency": "usd",
"x-price": "299",
"x-return": "https://yourdomain.com/thank-you"
}
response = requests.post("https://api.queye.co/pay/create/index.php", headers=headers)
fetch("https://api.queye.co/pay/create/index.php", {
method: "POST",
headers: {
"x-key": "your_vendor_key",
"x-secret": "your_secret_key", // WARNING: DO NOT EXPOSE YOUR SECRET KEY TO THE CLIENT
"x-name": "Test Product",
"x-currency": "usd",
"x-price": "299",
"x-return": "https://yourdomain.com/thank-you"
}
})
.then(response => response.text())
$ch = curl_init("https://api.queye.co/pay/create/index.php");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => [
"x-key: your_vendor_key",
"x-secret: your_secret_key",
"x-name: Test Product",
"x-currency: usd",
"x-price: 299",
"x-return: https://yourdomain.com/thank-you"
]
]);
$response = curl_exec($ch);
curl_close($ch);
curl -X POST https://api.queye.co/pay/create/index.php \
-H "x-key: your_vendor_key" \
-H "x-secret: your_secret_key" \
-H "x-name: Test Product" \
-H "x-currency: usd" \
-H "x-price: 299" \
-H "x-return: https://yourdomain.com/thank-you"
const https = require("https");
const options = {
hostname: "api.queye.co",
path: "/pay/create/index.php",
method: "POST",
headers: {
"x-key": "your_vendor_key",
"x-secret": "your_secret_key",
"x-name": "Test Product",
"x-currency": "usd",
"x-price": "299",
"x-return": "https://yourdomain.com/thank-you"
}
};
let data = "";
const req = https.request(options, res => {
res.on("data", chunk => data += chunk);
res.on("end", () => {
// handle data
});
});
req.end();
package main
import (
"fmt"
"net/http"
)
func main() {
req, _ := http.NewRequest("POST", "https://api.queye.co/pay/create/index.php", nil)
req.Header.Set("x-key", "your_vendor_key")
req.Header.Set("x-secret", "your_secret_key")
req.Header.Set("x-name", "Test Product")
req.Header.Set("x-currency", "usd")
req.Header.Set("x-price", "299")
req.Header.Set("x-return", "https://yourdomain.com/thank-you")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
using System.Net.Http;
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "https://api.queye.co/pay/create/index.php");
request.Headers.Add("x-key", "your_vendor_key");
request.Headers.Add("x-secret", "your_secret_key");
request.Headers.Add("x-name", "Test Product");
request.Headers.Add("x-currency", "usd");
request.Headers.Add("x-price", "299");
request.Headers.Add("x-return", "https://yourdomain.com/thank-you");
var response = await client.SendAsync(request);
import java.io.*;
import java.net.*;
public class PaymentRequest {
public static void main(String[] args) throws Exception {
URL url = new URL("https://api.queye.co/pay/create/index.php");
HttpURLConnection con = (HttpURLConnection) url.openConnection();
con.setRequestMethod("POST");
con.setRequestProperty("x-key", "your_vendor_key");
con.setRequestProperty("x-secret", "your_secret_key");
con.setRequestProperty("x-name", "Test Product");
con.setRequestProperty("x-currency", "usd");
con.setRequestProperty("x-price", "299");
con.setRequestProperty("x-return", "https://yourdomain.com/thank-you");
BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
String inputLine, response = "";
while ((inputLine = in.readLine()) != null)
response += inputLine;
in.close();
}
}
require 'net/http'
require 'uri'
uri = URI("https://api.queye.co/pay/create/index.php")
req = Net::HTTP::Post.new(uri)
req["x-key"] = "your_vendor_key"
req["x-secret"] = "your_secret_key"
req["x-name"] = "Test Product"
req["x-currency"] = "usd"
req["x-price"] = "299"
req["x-return"] = "https://yourdomain.com/thank-you"
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
http.request(req)
end
A product key will be returned. Store this as a variable to redirect the user.
$product_key = $response;
product_key=$(curl ...)
let product_key = data;
var product_key = resp.Status
fmt.Println(product_key)
}
var product_key = await response.Content.ReadAsStringAsync();
String product_key = response;
}
}
product_key = res.body
product_key = response.text
.then(product_key => {
// store or use product_key
});
Next: Redirecting the user.