Recaudo Docs

Pagos y clientes

Clientes

Los clientes son las personas a las que les cobras o vendes. Puedes asociarles métodos de pago, suscripciones y hacerles cargos.

POST /v1/customers

Crear cliente

Crea un nuevo cliente en tu cuenta.

Parámetros

Parámetro Tipo Requerido Descripción
email string Sí Correo del cliente
name string Sí Nombre completo
phone string No Teléfono
external_id string No ID del cliente en tu sistema
tax_id string No Identificación fiscal (RFC)
address string No Dirección (calle y número). Requerido para AMEX
city string No Ciudad. Requerido para AMEX
state string No Estado o provincia. Requerido para AMEX
postal_code string No Código postal. Requerido para AMEX
country string No Código de país ISO 3166-1 alpha-2 (p. ej. MX, US, CO). Requerido para AMEX
metadata object No Datos adicionales (máx. 50 llaves)
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'}
    }
)
Respuesta 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

Obtiene una lista paginada de todos los clientes.

Petición
curl https://recaudo.app/api/v1/customers?limit=10 \
  -H "Authorization: Bearer sk_live_xxx"
Respuesta 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

Obtener cliente

Obtiene los detalles de un cliente existente.

PATCH /v1/customers/:id

Actualizar cliente

Actualiza los datos de un cliente. Solo se modifican los campos enviados.

DELETE /v1/customers/:id

Eliminar cliente

Elimina un cliente y sus datos asociados. No se puede deshacer.

¿Te sirvió esta página? Gracias por avisarnos.
Esc