Pagamentos e clientes
Clientes
Os clientes representam seus usuários finais. Você pode associar formas de pagamento e assinaturas a eles e fazer cobranças.
POST
/v1/customers
Criar cliente
Cria um novo cliente na sua conta.
Parâmetros
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
email |
string | Sim | E-mail do cliente |
name |
string | Sim | Nome completo |
phone |
string | Não | Telefone |
external_id |
string | Não | ID do cliente no seu sistema |
tax_id |
string | Não | Identificação fiscal (RFC) |
address |
string | Não | Endereço (rua e número). Obrigatório para AMEX |
city |
string | Não | Ciudad. Obrigatório para AMEX |
state |
string | Não | Estado ou província. Obrigatório para AMEX |
postal_code |
string | Não | CEP. Obrigatório para AMEX |
country |
string | Não | Código de país ISO 3166-1 alpha-2 (ex.: MX, US, CO). Obrigatório para AMEX |
metadata |
object | Não | Dados adicionais (máx. 50 chaves) |
curl -X POST https://recaudo.app/api/v1/customers \
-H "Authorization: Bearer sk_live_xxx" \
-H "Content-Type: application/json" \
-d '{
"email": "cliente@ejemplo.com",
"name": "Juan Pérez",
"phone": "+52 55 1234 5678",
"address": "Av. Reforma 123, Col. Centro",
"city": "Ciudad de México",
"state": "CDMX",
"postal_code": "06600",
"country": "MX",
"tax_id": "XAXX010101000",
"metadata": {
"user_id": "usr_123"
}
}'
$response = $client->post('/api/v1/customers', [
'json' => [
'email' => 'cliente@ejemplo.com',
'name' => 'Juan Pérez',
'phone' => '+52 55 1234 5678',
'address' => 'Av. Reforma 123, Col. Centro',
'city' => 'Ciudad de México',
'state' => 'CDMX',
'postal_code' => '06600',
'country' => 'MX',
'tax_id' => 'XAXX010101000',
'metadata' => ['user_id' => 'usr_123']
]
]);
const customer = await fetch('/api/v1/customers', {
method: 'POST',
headers: {
'Authorization': 'Bearer sk_live_xxx',
'Content-Type': 'application/json',
},
body: JSON.stringify({
email: 'cliente@ejemplo.com',
name: 'Juan Pérez',
phone: '+52 55 1234 5678',
address: 'Av. Reforma 123, Col. Centro',
city: 'Ciudad de México',
state: 'CDMX',
postal_code: '06600',
country: 'MX',
tax_id: 'XAXX010101000',
metadata: { user_id: 'usr_123' }
})
});
response = requests.post(
'https://recaudo.app/api/v1/customers',
headers={'Authorization': 'Bearer sk_live_xxx'},
json={
'email': 'cliente@ejemplo.com',
'name': 'Juan Pérez',
'phone': '+52 55 1234 5678',
'address': 'Av. Reforma 123, Col. Centro',
'city': 'Ciudad de México',
'state': 'CDMX',
'postal_code': '06600',
'country': 'MX',
'tax_id': 'XAXX010101000',
'metadata': {'user_id': 'usr_123'}
}
)
Resposta
201
{
"object": "customer",
"data": {
"id": "8e250c25-9d84-4892-98ec-d71fc1fcd3c7",
"email": "cliente@ejemplo.com",
"name": "Juan Pérez",
"phone": "+52 55 1234 5678",
"address": "Av. Reforma 123, Col. Centro",
"city": "Ciudad de México",
"state": "CDMX",
"postal_code": "06600",
"country": "MX",
"tax_id": "XAXX010101000",
"metadata": { "user_id": "usr_123" },
"created_at": "2024-01-15T10:30:00Z"
}
}
GET
/v1/customers
Listar clientes
Obtém uma lista paginada de todos os clientes.
Requisição
curl https://recaudo.app/api/v1/customers?limit=10 \
-H "Authorization: Bearer sk_live_xxx"
Resposta
200
{
"object": "list",
"data": [
{
"id": "8e250c25-9d84-4892-98ec-d71fc1fcd3c7",
"object": "customer",
"email": "cliente@ejemplo.com",
"name": "Juan Perez",
...
}
],
"has_more": true,
"total_count": 150
}
GET
/v1/customers/:id
Obter cliente
Obtém os detalhes de um cliente existente.
PATCH
/v1/customers/:id
Atualizar cliente
Atualiza os dados de um cliente. Só os campos enviados são alterados.
DELETE
/v1/customers/:id
Excluir cliente
Exclui um cliente e seus dados associados. Não é possível desfazer.
Esta página ajudou?
Obrigado por avisar.