curl --request GET \
--url https://api.payviox.com/payment/{session_id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.payviox.com/payment/{session_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.payviox.com/payment/{session_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.payviox.com/payment/{session_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.payviox.com/payment/{session_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.payviox.com/payment/{session_id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.payviox.com/payment/{session_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{
"session_id": "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6",
"status": "succeeded",
"amount": 10250,
"fees": 250,
"net_amount": 10000,
"currency": "USD",
"order_id": "order_12345",
"customer": "customer_abc123",
"description": "Premium subscription",
"items": [
{
"name": "Premium Plan",
"quantity": 1,
"price": 10000
}
],
"metadata": {
"user_id": "usr_123",
"plan": "premium"
},
"payment_method": "credit",
"provider": "stripe",
"created_at": "2026-05-04T10:30:00.000000Z",
"customer_details": {
"name": "John Doe",
"email": "john@example.com",
"phone": "+33612345678",
"address": {
"line1": "123 Main St",
"city": "Paris",
"postal_code": "75001",
"country": "FR"
}
},
"payment_details": {
"type": "card",
"card": {
"brand": "visa",
"last4": "4242",
"exp_month": "12",
"exp_year": "2028",
"country": "FR"
}
},
"ip": "203.0.113.42",
"country": "FR",
"user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36"
}
{
"session_id": "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6",
"status": null,
"amount": 10000,
"fees": null,
"net_amount": null,
"currency": "USD",
"order_id": "order_12345",
"customer": "customer_abc123",
"description": "Premium subscription",
"items": [
{
"name": "Premium Plan",
"quantity": 1,
"price": 10000
}
],
"metadata": {
"user_id": "usr_123"
},
"payment_method": null,
"provider": null,
"created_at": "2026-05-04T10:30:00.000000Z",
"customer_details": null,
"payment_details": null,
"ip": null,
"country": null,
"user_agent": null
}
{
"error": "Payment not found"
}
{
"error": "Unauthorized"
}
Get Payment Details
Retrieve detailed information about a specific payment
curl --request GET \
--url https://api.payviox.com/payment/{session_id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.payviox.com/payment/{session_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.payviox.com/payment/{session_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.payviox.com/payment/{session_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.payviox.com/payment/{session_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.payviox.com/payment/{session_id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.payviox.com/payment/{session_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{
"session_id": "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6",
"status": "succeeded",
"amount": 10250,
"fees": 250,
"net_amount": 10000,
"currency": "USD",
"order_id": "order_12345",
"customer": "customer_abc123",
"description": "Premium subscription",
"items": [
{
"name": "Premium Plan",
"quantity": 1,
"price": 10000
}
],
"metadata": {
"user_id": "usr_123",
"plan": "premium"
},
"payment_method": "credit",
"provider": "stripe",
"created_at": "2026-05-04T10:30:00.000000Z",
"customer_details": {
"name": "John Doe",
"email": "john@example.com",
"phone": "+33612345678",
"address": {
"line1": "123 Main St",
"city": "Paris",
"postal_code": "75001",
"country": "FR"
}
},
"payment_details": {
"type": "card",
"card": {
"brand": "visa",
"last4": "4242",
"exp_month": "12",
"exp_year": "2028",
"country": "FR"
}
},
"ip": "203.0.113.42",
"country": "FR",
"user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36"
}
{
"session_id": "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6",
"status": null,
"amount": 10000,
"fees": null,
"net_amount": null,
"currency": "USD",
"order_id": "order_12345",
"customer": "customer_abc123",
"description": "Premium subscription",
"items": [
{
"name": "Premium Plan",
"quantity": 1,
"price": 10000
}
],
"metadata": {
"user_id": "usr_123"
},
"payment_method": null,
"provider": null,
"created_at": "2026-05-04T10:30:00.000000Z",
"customer_details": null,
"payment_details": null,
"ip": null,
"country": null,
"user_agent": null
}
{
"error": "Payment not found"
}
{
"error": "Unauthorized"
}
Overview
Returns comprehensive details about a payment, including the amount, fees, customer information, payment method, and transaction status. Use this endpoint for reconciliation, to verify payment status on-demand, or to retrieve data you may have missed from a webhook.10000 = $100.00).Authentication
This endpoint requires your Secret API Key (server-side only). See Authentication for details.Authorization: Bearer sk_live_xxxxxxxxxxxx
Path Parameters
Response Fields
succeeded, failed, pending, processing, pending_review, declined, expired, or null if no payment attempt was made.null if the payment has not been completed yet.amount - fees). This is what your business receives. null if the payment has not been completed yet.USD).provider. Examples: credit, apple_pay (provider: "stripe"), bitcoin
(provider: "uniwire"), pix_br (provider: "payssion"). Same value as the
payment_method of the webhook sent for this payment.stripe, paypal, payssion).null if the payment has not been completed.FR, US).Example Requests
curl https://api.payviox.com/payment/a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6 \
-H "Authorization: Bearer sk_live_xxxxxxxxxxxx"
const response = await fetch('https://api.payviox.com/payment/a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6', {
headers: {
'Authorization': 'Bearer sk_live_xxxxxxxxxxxx'
}
});
const payment = await response.json();
console.log(payment.status); // "succeeded"
console.log(payment.net_amount); // 10000
import requests
response = requests.get(
'https://api.payviox.com/payment/a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6',
headers={
'Authorization': 'Bearer sk_live_xxxxxxxxxxxx'
}
)
payment = response.json()
print(payment['status']) # "succeeded"
print(payment['net_amount']) # 10000
<?php
$apiKey = 'sk_live_xxxxxxxxxxxx';
$sessionId = 'a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6';
$url = "https://api.payviox.com/payment/{$sessionId}";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Authorization: Bearer ' . $apiKey
]);
$response = curl_exec($ch);
curl_close($ch);
$payment = json_decode($response, true);
echo $payment['status']; // "succeeded"
echo $payment['net_amount']; // 10000
require 'net/http'
require 'json'
session_id = 'a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6'
uri = URI("https://api.payviox.com/payment/#{session_id}")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Get.new(uri)
request['Authorization'] = 'Bearer sk_live_xxxxxxxxxxxx'
response = http.request(request)
payment = JSON.parse(response.body)
puts payment['status'] # "succeeded"
puts payment['net_amount'] # 10000
package main
import (
"encoding/json"
"fmt"
"net/http"
)
func main() {
sessionID := "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6"
url := fmt.Sprintf("https://api.payviox.com/payment/%s", sessionID)
req, _ := http.NewRequest("GET", url, nil)
req.Header.Set("Authorization", "Bearer sk_live_xxxxxxxxxxxx")
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
var payment map[string]interface{}
json.NewDecoder(resp.Body).Decode(&payment)
fmt.Println(payment["status"]) // "succeeded"
fmt.Println(payment["net_amount"]) // 10000
}
Example Response
{
"session_id": "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6",
"status": "succeeded",
"amount": 10250,
"fees": 250,
"net_amount": 10000,
"currency": "USD",
"order_id": "order_12345",
"customer": "customer_abc123",
"description": "Premium subscription",
"items": [
{
"name": "Premium Plan",
"quantity": 1,
"price": 10000
}
],
"metadata": {
"user_id": "usr_123",
"plan": "premium"
},
"payment_method": "credit",
"provider": "stripe",
"created_at": "2026-05-04T10:30:00.000000Z",
"customer_details": {
"name": "John Doe",
"email": "john@example.com",
"phone": "+33612345678",
"address": {
"line1": "123 Main St",
"city": "Paris",
"postal_code": "75001",
"country": "FR"
}
},
"payment_details": {
"type": "card",
"card": {
"brand": "visa",
"last4": "4242",
"exp_month": "12",
"exp_year": "2028",
"country": "FR"
}
},
"ip": "203.0.113.42",
"country": "FR",
"user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36"
}
{
"session_id": "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6",
"status": null,
"amount": 10000,
"fees": null,
"net_amount": null,
"currency": "USD",
"order_id": "order_12345",
"customer": "customer_abc123",
"description": "Premium subscription",
"items": [
{
"name": "Premium Plan",
"quantity": 1,
"price": 10000
}
],
"metadata": {
"user_id": "usr_123"
},
"payment_method": null,
"provider": null,
"created_at": "2026-05-04T10:30:00.000000Z",
"customer_details": null,
"payment_details": null,
"ip": null,
"country": null,
"user_agent": null
}
{
"error": "Payment not found"
}
{
"error": "Unauthorized"
}
Error Responses
401 -- Unauthorized
401 -- Unauthorized
Authorization: Bearer header. Public API keys are not accepted for this endpoint.{
"error": "Unauthorized"
}
404 -- Payment not found
404 -- Payment not found
session_id does not exist or does not belong to your business.How to resolve: Verify the session_id is correct. You can only retrieve payments created by your own business.{
"error": "Payment not found"
}
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
The session ID returned when you created the payment session
Response
Payment details retrieved successfully
Unique identifier for the payment session
Current payment status
Gross amount in cents (what the customer pays)
Total fees in cents (null if payment not completed)
Net amount in cents (amount - fees, null if payment not completed)
Three-letter ISO currency code
Your unique order identifier
Customer identifier
Payment description
Array of items from the original session
Custom key-value pairs attached to this session
Method the buyer paid with, without the provider prefix — read it together with provider (e.g., credit or apple_pay with provider stripe, bitcoin with provider uniwire, pix_br with provider payssion)
Payment provider used (e.g., stripe, paypal)
ISO 8601 timestamp of session creation
Customer billing information (null if payment not completed)
Show child attributes
Show child attributes
Payment method details (null if payment not completed)
Show child attributes
Show child attributes
End-user's IP address
Two-letter country code from IP geolocation
End-user's browser User-Agent string