curl --request POST \
--url https://api.paywint.com/api/platform/users/create \
--header 'Content-Type: application/json' \
--header 'X-Platform-ID: <x-platform-id>' \
--header 'X-Signature: <x-signature>' \
--data '
{
"name": "John Doe",
"email": "john.doe@example.com",
"phone_country_code": "+1",
"phone": "1234567890"
}
'import requests
url = "https://api.paywint.com/api/platform/users/create"
payload = {
"name": "John Doe",
"email": "john.doe@example.com",
"phone_country_code": "+1",
"phone": "1234567890"
}
headers = {
"X-Platform-ID": "<x-platform-id>",
"X-Signature": "<x-signature>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'X-Platform-ID': '<x-platform-id>',
'X-Signature': '<x-signature>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
name: 'John Doe',
email: 'john.doe@example.com',
phone_country_code: '+1',
phone: '1234567890'
})
};
fetch('https://api.paywint.com/api/platform/users/create', 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.paywint.com/api/platform/users/create",
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([
'name' => 'John Doe',
'email' => 'john.doe@example.com',
'phone_country_code' => '+1',
'phone' => '1234567890'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-Platform-ID: <x-platform-id>",
"X-Signature: <x-signature>"
],
]);
$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.paywint.com/api/platform/users/create"
payload := strings.NewReader("{\n \"name\": \"John Doe\",\n \"email\": \"john.doe@example.com\",\n \"phone_country_code\": \"+1\",\n \"phone\": \"1234567890\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-Platform-ID", "<x-platform-id>")
req.Header.Add("X-Signature", "<x-signature>")
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.paywint.com/api/platform/users/create")
.header("X-Platform-ID", "<x-platform-id>")
.header("X-Signature", "<x-signature>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"John Doe\",\n \"email\": \"john.doe@example.com\",\n \"phone_country_code\": \"+1\",\n \"phone\": \"1234567890\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.paywint.com/api/platform/users/create")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-Platform-ID"] = '<x-platform-id>'
request["X-Signature"] = '<x-signature>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"John Doe\",\n \"email\": \"john.doe@example.com\",\n \"phone_country_code\": \"+1\",\n \"phone\": \"1234567890\"\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"message": "Operation completed.",
"data": {
"pw_id": 111,
"user_id": "b3a9b622-cc63-4d3c-aad6-2d8e29e6f9d4",
"name": "John Doe",
"email": "john.doe@example.com",
"phone_country_code": "+1",
"phone": "1234567890",
"created_at": "2025-06-10T18:10:42.000Z"
},
"queryGeneratedTime": 1718006400
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Create User
Creates a new user account into the platform.
This endpoint enables platforms to:
- Register a new user
- Automatically generate a wallet for the user
- Initialize default settings for the newly created user
- At least one is required: provide either an email or a phone number with country code.
curl --request POST \
--url https://api.paywint.com/api/platform/users/create \
--header 'Content-Type: application/json' \
--header 'X-Platform-ID: <x-platform-id>' \
--header 'X-Signature: <x-signature>' \
--data '
{
"name": "John Doe",
"email": "john.doe@example.com",
"phone_country_code": "+1",
"phone": "1234567890"
}
'import requests
url = "https://api.paywint.com/api/platform/users/create"
payload = {
"name": "John Doe",
"email": "john.doe@example.com",
"phone_country_code": "+1",
"phone": "1234567890"
}
headers = {
"X-Platform-ID": "<x-platform-id>",
"X-Signature": "<x-signature>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'X-Platform-ID': '<x-platform-id>',
'X-Signature': '<x-signature>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
name: 'John Doe',
email: 'john.doe@example.com',
phone_country_code: '+1',
phone: '1234567890'
})
};
fetch('https://api.paywint.com/api/platform/users/create', 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.paywint.com/api/platform/users/create",
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([
'name' => 'John Doe',
'email' => 'john.doe@example.com',
'phone_country_code' => '+1',
'phone' => '1234567890'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-Platform-ID: <x-platform-id>",
"X-Signature: <x-signature>"
],
]);
$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.paywint.com/api/platform/users/create"
payload := strings.NewReader("{\n \"name\": \"John Doe\",\n \"email\": \"john.doe@example.com\",\n \"phone_country_code\": \"+1\",\n \"phone\": \"1234567890\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-Platform-ID", "<x-platform-id>")
req.Header.Add("X-Signature", "<x-signature>")
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.paywint.com/api/platform/users/create")
.header("X-Platform-ID", "<x-platform-id>")
.header("X-Signature", "<x-signature>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"John Doe\",\n \"email\": \"john.doe@example.com\",\n \"phone_country_code\": \"+1\",\n \"phone\": \"1234567890\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.paywint.com/api/platform/users/create")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-Platform-ID"] = '<x-platform-id>'
request["X-Signature"] = '<x-signature>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"John Doe\",\n \"email\": \"john.doe@example.com\",\n \"phone_country_code\": \"+1\",\n \"phone\": \"1234567890\"\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"message": "Operation completed.",
"data": {
"pw_id": 111,
"user_id": "b3a9b622-cc63-4d3c-aad6-2d8e29e6f9d4",
"name": "John Doe",
"email": "john.doe@example.com",
"phone_country_code": "+1",
"phone": "1234567890",
"created_at": "2025-06-10T18:10:42.000Z"
},
"queryGeneratedTime": 1718006400
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Headers
Unique platform identifier (UUID). You receive this during onboarding. Must be sent with every API request.
HMAC-SHA256 request signature for authentication. Use your platform secret key to compute it as: METHOD + PATH + QUERY + BODY_HASH.
Body
Full name of the user
100"John Doe"
Email address
100"john.doe@example.com"
International dialing code of the user’s phone number (e.g., +1 for US).
5"+1"
User’s local phone number, excluding country code.
15"1234567890"
Response
Successful Response
Indicates whether the request was processed successfully.
true
A short, human-readable message describing the result of the request.
"Operation completed."
The main response payload, if applicable
Show child attributes
Show child attributes
The Unix timestamp (in seconds) indicating when the response was generated.
1718006400

