curl --request POST \
--url https://nexus.ticto.com.br/api/v1/webhook-events/transaction_created \
--header 'Content-Type: application/json' \
--data '
{
"event": "transaction_created",
"endpoint": "https://api.meusite.com/webhook/nexus",
"payload": {
"hash": "TPC4A2F1503K9Z",
"status": "processing",
"payment_method": "credit_card",
"paid_amount": 19700,
"is_card2": false,
"occurrence": 2,
"gateway": "autorizou",
"order": {
"hash": "TOCA3F111503K9Z42QM",
"origin": "nexus"
}
},
"metadata": {
"origin": "payments",
"request_id": "67be1a2f3c4d5",
"correlation_id": null
},
"created_at": "2026-02-25T10:00:00.000000Z",
"updated_at": "2026-02-25T10:00:00.000000Z"
}
'import requests
url = "https://nexus.ticto.com.br/api/v1/webhook-events/transaction_created"
payload = {
"event": "transaction_created",
"endpoint": "https://api.meusite.com/webhook/nexus",
"payload": {
"hash": "TPC4A2F1503K9Z",
"status": "processing",
"payment_method": "credit_card",
"paid_amount": 19700,
"is_card2": False,
"occurrence": 2,
"gateway": "autorizou",
"order": {
"hash": "TOCA3F111503K9Z42QM",
"origin": "nexus"
}
},
"metadata": {
"origin": "payments",
"request_id": "67be1a2f3c4d5",
"correlation_id": None
},
"created_at": "2026-02-25T10:00:00.000000Z",
"updated_at": "2026-02-25T10:00:00.000000Z"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
event: 'transaction_created',
endpoint: 'https://api.meusite.com/webhook/nexus',
payload: {
hash: 'TPC4A2F1503K9Z',
status: 'processing',
payment_method: 'credit_card',
paid_amount: 19700,
is_card2: false,
occurrence: 2,
gateway: 'autorizou',
order: {hash: 'TOCA3F111503K9Z42QM', origin: 'nexus'}
},
metadata: {origin: 'payments', request_id: '67be1a2f3c4d5', correlation_id: null},
created_at: '2026-02-25T10:00:00.000000Z',
updated_at: '2026-02-25T10:00:00.000000Z'
})
};
fetch('https://nexus.ticto.com.br/api/v1/webhook-events/transaction_created', 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://nexus.ticto.com.br/api/v1/webhook-events/transaction_created",
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([
'event' => 'transaction_created',
'endpoint' => 'https://api.meusite.com/webhook/nexus',
'payload' => [
'hash' => 'TPC4A2F1503K9Z',
'status' => 'processing',
'payment_method' => 'credit_card',
'paid_amount' => 19700,
'is_card2' => false,
'occurrence' => 2,
'gateway' => 'autorizou',
'order' => [
'hash' => 'TOCA3F111503K9Z42QM',
'origin' => 'nexus'
]
],
'metadata' => [
'origin' => 'payments',
'request_id' => '67be1a2f3c4d5',
'correlation_id' => null
],
'created_at' => '2026-02-25T10:00:00.000000Z',
'updated_at' => '2026-02-25T10:00:00.000000Z'
]),
CURLOPT_HTTPHEADER => [
"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://nexus.ticto.com.br/api/v1/webhook-events/transaction_created"
payload := strings.NewReader("{\n \"event\": \"transaction_created\",\n \"endpoint\": \"https://api.meusite.com/webhook/nexus\",\n \"payload\": {\n \"hash\": \"TPC4A2F1503K9Z\",\n \"status\": \"processing\",\n \"payment_method\": \"credit_card\",\n \"paid_amount\": 19700,\n \"is_card2\": false,\n \"occurrence\": 2,\n \"gateway\": \"autorizou\",\n \"order\": {\n \"hash\": \"TOCA3F111503K9Z42QM\",\n \"origin\": \"nexus\"\n }\n },\n \"metadata\": {\n \"origin\": \"payments\",\n \"request_id\": \"67be1a2f3c4d5\",\n \"correlation_id\": null\n },\n \"created_at\": \"2026-02-25T10:00:00.000000Z\",\n \"updated_at\": \"2026-02-25T10:00:00.000000Z\"\n}")
req, _ := http.NewRequest("POST", url, payload)
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://nexus.ticto.com.br/api/v1/webhook-events/transaction_created")
.header("Content-Type", "application/json")
.body("{\n \"event\": \"transaction_created\",\n \"endpoint\": \"https://api.meusite.com/webhook/nexus\",\n \"payload\": {\n \"hash\": \"TPC4A2F1503K9Z\",\n \"status\": \"processing\",\n \"payment_method\": \"credit_card\",\n \"paid_amount\": 19700,\n \"is_card2\": false,\n \"occurrence\": 2,\n \"gateway\": \"autorizou\",\n \"order\": {\n \"hash\": \"TOCA3F111503K9Z42QM\",\n \"origin\": \"nexus\"\n }\n },\n \"metadata\": {\n \"origin\": \"payments\",\n \"request_id\": \"67be1a2f3c4d5\",\n \"correlation_id\": null\n },\n \"created_at\": \"2026-02-25T10:00:00.000000Z\",\n \"updated_at\": \"2026-02-25T10:00:00.000000Z\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://nexus.ticto.com.br/api/v1/webhook-events/transaction_created")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"event\": \"transaction_created\",\n \"endpoint\": \"https://api.meusite.com/webhook/nexus\",\n \"payload\": {\n \"hash\": \"TPC4A2F1503K9Z\",\n \"status\": \"processing\",\n \"payment_method\": \"credit_card\",\n \"paid_amount\": 19700,\n \"is_card2\": false,\n \"occurrence\": 2,\n \"gateway\": \"autorizou\",\n \"order\": {\n \"hash\": \"TOCA3F111503K9Z42QM\",\n \"origin\": \"nexus\"\n }\n },\n \"metadata\": {\n \"origin\": \"payments\",\n \"request_id\": \"67be1a2f3c4d5\",\n \"correlation_id\": null\n },\n \"created_at\": \"2026-02-25T10:00:00.000000Z\",\n \"updated_at\": \"2026-02-25T10:00:00.000000Z\"\n}"
response = http.request(request)
puts response.read_bodytransaction_created
Disparado quando uma cobrança (transação) é criada para um pedido de origem Nexus.
Quando ocorre:
- Primeira compra, no momento em que a cobrança é gerada
- Cada ciclo de uma assinatura, na geração da cobrança da renovação
Por que este evento existe: a renovação reaproveita o mesmo pedido e gera uma nova
cobrança por ciclo, então order_created não dispara de novo. Use o hash da cobrança
e a occurrence para identificar o ciclo, e order.hash para correlacionar com o pedido.
Pagamento em dois cartões: o pedido gera duas cobranças, cada uma com seu próprio
hash, o mesmo order.hash e a mesma occurrence. A segunda chega com is_card2: true
e o valor da venda é a soma de paid_amount das duas. Conte uma venda, não duas.
Observação: Os campos id são automaticamente removidos do payload — a correlação
é feita por códigos públicos (hash).
curl --request POST \
--url https://nexus.ticto.com.br/api/v1/webhook-events/transaction_created \
--header 'Content-Type: application/json' \
--data '
{
"event": "transaction_created",
"endpoint": "https://api.meusite.com/webhook/nexus",
"payload": {
"hash": "TPC4A2F1503K9Z",
"status": "processing",
"payment_method": "credit_card",
"paid_amount": 19700,
"is_card2": false,
"occurrence": 2,
"gateway": "autorizou",
"order": {
"hash": "TOCA3F111503K9Z42QM",
"origin": "nexus"
}
},
"metadata": {
"origin": "payments",
"request_id": "67be1a2f3c4d5",
"correlation_id": null
},
"created_at": "2026-02-25T10:00:00.000000Z",
"updated_at": "2026-02-25T10:00:00.000000Z"
}
'import requests
url = "https://nexus.ticto.com.br/api/v1/webhook-events/transaction_created"
payload = {
"event": "transaction_created",
"endpoint": "https://api.meusite.com/webhook/nexus",
"payload": {
"hash": "TPC4A2F1503K9Z",
"status": "processing",
"payment_method": "credit_card",
"paid_amount": 19700,
"is_card2": False,
"occurrence": 2,
"gateway": "autorizou",
"order": {
"hash": "TOCA3F111503K9Z42QM",
"origin": "nexus"
}
},
"metadata": {
"origin": "payments",
"request_id": "67be1a2f3c4d5",
"correlation_id": None
},
"created_at": "2026-02-25T10:00:00.000000Z",
"updated_at": "2026-02-25T10:00:00.000000Z"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
event: 'transaction_created',
endpoint: 'https://api.meusite.com/webhook/nexus',
payload: {
hash: 'TPC4A2F1503K9Z',
status: 'processing',
payment_method: 'credit_card',
paid_amount: 19700,
is_card2: false,
occurrence: 2,
gateway: 'autorizou',
order: {hash: 'TOCA3F111503K9Z42QM', origin: 'nexus'}
},
metadata: {origin: 'payments', request_id: '67be1a2f3c4d5', correlation_id: null},
created_at: '2026-02-25T10:00:00.000000Z',
updated_at: '2026-02-25T10:00:00.000000Z'
})
};
fetch('https://nexus.ticto.com.br/api/v1/webhook-events/transaction_created', 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://nexus.ticto.com.br/api/v1/webhook-events/transaction_created",
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([
'event' => 'transaction_created',
'endpoint' => 'https://api.meusite.com/webhook/nexus',
'payload' => [
'hash' => 'TPC4A2F1503K9Z',
'status' => 'processing',
'payment_method' => 'credit_card',
'paid_amount' => 19700,
'is_card2' => false,
'occurrence' => 2,
'gateway' => 'autorizou',
'order' => [
'hash' => 'TOCA3F111503K9Z42QM',
'origin' => 'nexus'
]
],
'metadata' => [
'origin' => 'payments',
'request_id' => '67be1a2f3c4d5',
'correlation_id' => null
],
'created_at' => '2026-02-25T10:00:00.000000Z',
'updated_at' => '2026-02-25T10:00:00.000000Z'
]),
CURLOPT_HTTPHEADER => [
"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://nexus.ticto.com.br/api/v1/webhook-events/transaction_created"
payload := strings.NewReader("{\n \"event\": \"transaction_created\",\n \"endpoint\": \"https://api.meusite.com/webhook/nexus\",\n \"payload\": {\n \"hash\": \"TPC4A2F1503K9Z\",\n \"status\": \"processing\",\n \"payment_method\": \"credit_card\",\n \"paid_amount\": 19700,\n \"is_card2\": false,\n \"occurrence\": 2,\n \"gateway\": \"autorizou\",\n \"order\": {\n \"hash\": \"TOCA3F111503K9Z42QM\",\n \"origin\": \"nexus\"\n }\n },\n \"metadata\": {\n \"origin\": \"payments\",\n \"request_id\": \"67be1a2f3c4d5\",\n \"correlation_id\": null\n },\n \"created_at\": \"2026-02-25T10:00:00.000000Z\",\n \"updated_at\": \"2026-02-25T10:00:00.000000Z\"\n}")
req, _ := http.NewRequest("POST", url, payload)
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://nexus.ticto.com.br/api/v1/webhook-events/transaction_created")
.header("Content-Type", "application/json")
.body("{\n \"event\": \"transaction_created\",\n \"endpoint\": \"https://api.meusite.com/webhook/nexus\",\n \"payload\": {\n \"hash\": \"TPC4A2F1503K9Z\",\n \"status\": \"processing\",\n \"payment_method\": \"credit_card\",\n \"paid_amount\": 19700,\n \"is_card2\": false,\n \"occurrence\": 2,\n \"gateway\": \"autorizou\",\n \"order\": {\n \"hash\": \"TOCA3F111503K9Z42QM\",\n \"origin\": \"nexus\"\n }\n },\n \"metadata\": {\n \"origin\": \"payments\",\n \"request_id\": \"67be1a2f3c4d5\",\n \"correlation_id\": null\n },\n \"created_at\": \"2026-02-25T10:00:00.000000Z\",\n \"updated_at\": \"2026-02-25T10:00:00.000000Z\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://nexus.ticto.com.br/api/v1/webhook-events/transaction_created")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"event\": \"transaction_created\",\n \"endpoint\": \"https://api.meusite.com/webhook/nexus\",\n \"payload\": {\n \"hash\": \"TPC4A2F1503K9Z\",\n \"status\": \"processing\",\n \"payment_method\": \"credit_card\",\n \"paid_amount\": 19700,\n \"is_card2\": false,\n \"occurrence\": 2,\n \"gateway\": \"autorizou\",\n \"order\": {\n \"hash\": \"TOCA3F111503K9Z42QM\",\n \"origin\": \"nexus\"\n }\n },\n \"metadata\": {\n \"origin\": \"payments\",\n \"request_id\": \"67be1a2f3c4d5\",\n \"correlation_id\": null\n },\n \"created_at\": \"2026-02-25T10:00:00.000000Z\",\n \"updated_at\": \"2026-02-25T10:00:00.000000Z\"\n}"
response = http.request(request)
puts response.read_bodyBody
Envelope padrão de todos os webhooks enviados pelo Nexus.
O campo payload varia conforme o evento.
Nome do evento disparado
"user_updated"
URL do webhook configurada pelo cliente
"https://api.meusite.com/webhook/nexus"
Payload do evento transaction_created.
Disparado quando uma cobrança é criada para um pedido de origem Nexus,
tanto na primeira compra quanto em cada ciclo da assinatura.
Show child attributes
Show child attributes
Metadados de rastreamento do webhook
Show child attributes
Show child attributes
Data de criação do webhook (ISO 8601)
"2026-02-25T10:00:00.000000Z"
Data de atualização do webhook (ISO 8601)
"2026-02-25T10:00:00.000000Z"
Response
Webhook recebido com sucesso