curl --request GET \
--url https://api.sandbox.rails.wayex.com/v1/customers/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.sandbox.rails.wayex.com/v1/customers/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.sandbox.rails.wayex.com/v1/customers/{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://api.sandbox.rails.wayex.com/v1/customers/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.sandbox.rails.wayex.com/v1/customers/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.sandbox.rails.wayex.com/v1/customers/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sandbox.rails.wayex.com/v1/customers/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "<string>",
"counterpartyId": "<string>",
"type": "individual",
"contact": {
"email": "jsmith@example.com",
"name": "<string>"
},
"verificationStatus": "in_progress",
"entitlements": [
{
"entitlement": "aud_onramp",
"status": "in_progress"
}
],
"createdAt": "2023-11-07T05:31:56Z",
"externalCustomerId": "<string>",
"businessDetails": {
"companyName": "<string>",
"registrationNumber": "<string>",
"country": "<string>"
},
"individualDetails": {
"firstName": "<string>",
"lastName": "<string>",
"dob": "<string>",
"nationality": "<string>",
"country": "<string>"
},
"verifiedAt": "2023-11-07T05:31:56Z",
"suspendedAt": "2023-11-07T05:31:56Z",
"metadata": {}
}Get a customer
Returns the current record for one customer.
curl --request GET \
--url https://api.sandbox.rails.wayex.com/v1/customers/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.sandbox.rails.wayex.com/v1/customers/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.sandbox.rails.wayex.com/v1/customers/{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://api.sandbox.rails.wayex.com/v1/customers/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.sandbox.rails.wayex.com/v1/customers/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.sandbox.rails.wayex.com/v1/customers/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sandbox.rails.wayex.com/v1/customers/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "<string>",
"counterpartyId": "<string>",
"type": "individual",
"contact": {
"email": "jsmith@example.com",
"name": "<string>"
},
"verificationStatus": "in_progress",
"entitlements": [
{
"entitlement": "aud_onramp",
"status": "in_progress"
}
],
"createdAt": "2023-11-07T05:31:56Z",
"externalCustomerId": "<string>",
"businessDetails": {
"companyName": "<string>",
"registrationNumber": "<string>",
"country": "<string>"
},
"individualDetails": {
"firstName": "<string>",
"lastName": "<string>",
"dob": "<string>",
"nationality": "<string>",
"country": "<string>"
},
"verifiedAt": "2023-11-07T05:31:56Z",
"suspendedAt": "2023-11-07T05:31:56Z",
"metadata": {}
}What this endpoint does
Returns the current record for one customer.When to use it
Use it for customer detail, support checks, and authoritative state after a webhook.Before you call
Authenticate with customer read access and pass a customer ID owned by the same tenant account.Money and balance effect
This is a read-only request. It does not reserve, debit, credit, or settle money.States and completion
The customer’sverificationStatus is in_progress, approved, rejected, or requires_action; each entitlements entry carries its own status from the same set. Both are authoritative at response time — only approved entitlements can be used.
Safe retries
GET requests are read-only and may be retried with normal exponential backoff. Do not send anIdempotency-Key.
Read Customers for the complete workflow.Authorizations
Send the same Wayex API key as Authorization: Bearer <key>.
Path Parameters
Response
The customer.
Unique Wayex identifier for this customer.
1The client account (counterparty) this customer belongs to. For API callers this is always your own account id.
1Whether the customer is an individual (natural person) or a business (legal entity).
individual, business Show child attributes
Show child attributes
Current verification state. Value can only move on the customer's behalf once approved.
in_progress, approved, rejected, requires_action The capabilities this customer is cleared for, granted as verification completes.
Show child attributes
Show child attributes
When the customer was created (ISO 8601).
Your own identifier for this customer, echoed back for cross-referencing.
1Show child attributes
Show child attributes
Show child attributes
Show child attributes
When the customer's verification was approved (ISO 8601). Present only while approved.
When set, the customer is suspended and cannot transact until reinstated (ISO 8601).
Show child attributes
Show child attributes

