Saltar a contenido

🤖 Explicar con IA

Manejo de reembolsos, devoluciones de cargo y disputas mediante programación

Descripción general

4Geeks Payments proporciona herramientas integrales para gestionar reembolsos, devoluciones de cargo y disputas. Como su comerciante registrado, 4Geeks maneja los aspectos de responsabilidad y cumplimiento, pero usted aún necesita administrar la experiencia del cliente y los flujos de trabajo operativos.

En este tutorial, podrás:

  • Procesar reembolsos totales y parciales a través de API
  • Manejar notificaciones de devolución de cargo
  • Gestionar los flujos de trabajo de resolución de disputas.
  • Configurar políticas de reembolso automatizadas
  • Monitorear las métricas de reembolsos y disputas.

Paso 1: Procesar reembolsos

Reembolso completo

const refund = await axios.post(
  `https://api.4geeks.io/v1/charges/${chargeId}/refunds`,
  {
    reason: 'requested_by_customer'
    // No amount = full refund
  },
  {
    headers: { 'Authorization': `Bearer ${SECRET_KEY}` }
  }
);

console.log('Refund processed:', refund.data);
// ref_xxxxxxxxxxxxx

Reembolso parcial

const partialRefund = await axios.post(
  `https://api.4geeks.io/v1/charges/${chargeId}/refunds`,
  {
    amount: 2500,  // $25.00 in cents
    reason: 'product_defective'
  },
  {
    headers: { 'Authorization': `Bearer ${SECRET_KEY}` }
  }
);

Motivos del reembolso

Razón Descripción
solicitado_por_cliente Cliente solicitó el reembolso
duplicado Se realizó cargo duplicado
fraudulento El cargo no fue autorizado
producto_defectuoso El producto estaba defectuoso o no se corresponde con la descripción
servicio_no_entregado No se proporcionó el servicio
suscripción_cancelada La suscripción fue cancelada

Reembolsos múltiples con el mismo cargo

Puedes procesar múltiples reembolsos parciales con un solo cargo:

// First partial refund: $25
await axios.post(`https://api.4geeks.io/v1/charges/${chargeId}/refunds`, {
  amount: 2500,
  reason: 'product_defective'
}, { headers: { 'Authorization': `Bearer ${SECRET_KEY}` } });

// Second partial refund: $15
await axios.post(`https://api.4geeks.io/v1/charges/${chargeId}/refunds`, {
  amount: 1500,
  reason: 'shipping_delay'
}, { headers: { 'Authorization': `Bearer ${SECRET_KEY}` } });

// Total refunded: $40 of original $100 charge

Paso 2: Manejar las devoluciones de cargo

Eventos de webhook de devolución de cargo

Cuando se produce una devolución de cargo, recibirás una notificación de webhook:

// In your webhook handler
switch (event.type) {
  case 'chargeback.created':
    // Customer disputed the charge with their bank
    console.log('Chargeback created:', event.data);
    // Gather evidence: order details, delivery confirmation, communication
    submitChargebackEvidence(event.data.chargeback_id, evidence);
    break;

  case 'chargeback.updated':
    // Status changed (under review, evidence submitted, etc.)
    console.log('Chargeback updated:', event.data);
    break;

  case 'chargeback.won':
    // You won the dispute — funds returned
    console.log('Chargeback won:', event.data);
    updateOrderStatus(event.data.charge_id, 'chargeback_won');
    break;

  case 'chargeback.lost':
    // You lost the dispute — funds deducted
    console.log('Chargeback lost:', event.data);
    updateOrderStatus(event.data.charge_id, 'chargeback_lost');
    break;
}

Envío de evidencia de contracargo

const evidence = await axios.post(
  `https://api.4geeks.io/v1/chargebacks/${chargebackId}/evidence`,
  {
    // Evidence types
    product_description: 'Detailed description of the product/service',
    customer_communication: 'Email/chat logs showing customer agreement',
    delivery_confirmation: 'Tracking number and delivery confirmation',
    customer_signature: 'Signed delivery receipt (if applicable)',
    cancellation_policy: 'Link to your refund/cancellation policy',
    service_logs: 'Server logs showing service was provided',
    additional_evidence: 'Any other relevant documentation'
  },
  {
    headers: { 'Authorization': `Bearer ${SECRET_KEY}` }
  }
);

Cronograma de devolución de cargo

Etapa Tiempo Acción requerida
Devolución de cargo presentada Día 0 Recibir notificación, reunir pruebas
Fecha límite de presentación de pruebas Día 7-14 Presentar todas las pruebas antes de la fecha límite
Revisión bancaria Día 14-30 Espere la decisión del banco
Decisión Día 30-60 Recibir notificación de victoria/perdida
Representación Día 60-75 Opcional: impugnar la decisión

Paso 3: Gestionar disputas

Disputa versus devolución de cargo

Aspecto Disputa Devolución de cargo
Iniciado por El cliente se comunica con usted directamente Cliente contacta con su banco
Resolución Resuelves con el cliente Banco decide el resultado
Tarifas Sin cargos adicionales Se aplica una tarifa de devolución de cargo
Cronología Inmediato 30-75 días
Controlar Control total Control limitado

Prevención proactiva de disputas

// Set up automated refund for high-risk situations
const charge = await axios.get(
  `https://api.4geeks.io/v1/charges/${chargeId}`,
  { headers: { 'Authorization': `Bearer ${SECRET_KEY}` } }
);

// If customer requests refund, process it immediately
// to prevent chargeback
if (charge.data.customer_complaint === true) {
  await axios.post(
    `https://api.4geeks.io/v1/charges/${chargeId}/refunds`,
    { reason: 'requested_by_customer' },
    { headers: { 'Authorization': `Bearer ${SECRET_KEY}` } }
  );
}

Paso 4: Configurar políticas de reembolso automatizadas

Reglas de reembolso automático

Configura reembolsos automáticos según condiciones:

// Example: Auto-refund if subscription canceled within trial period
const subscription = await axios.get(
  `https://api.4geeks.io/v1/subscriptions/${subId}`,
  { headers: { 'Authorization': `Bearer ${SECRET_KEY}` } }
);

if (subscription.data.trial_period && 
    subscription.data.days_active <= subscription.data.trial_period_days) {
  // Auto-refund the first charge
  await axios.post(
    `https://api.4geeks.io/v1/charges/${subscription.data.latest_charge_id}/refunds`,
    { reason: 'subscription_canceled' },
    { headers: { 'Authorization': `Bearer ${SECRET_KEY}` } }
  );
}

Configuración de la política de reembolso

  1. Vaya a PagosConfiguraciónReembolsos
  2. Configurar:
  3. Ventana de reembolso automático: período de tiempo para reembolsos automáticos (por ejemplo, 14 días)
  4. Se permite reembolso parcial: Sí/No
  5. Tiempo de procesamiento del reembolso: Instantáneo, 1-3 días, 5-10 días
  6. Configuración de notificaciones: envía un correo electrónico al cliente sobre el reembolso

Paso 5: Supervisar las métricas de reembolsos y disputas

Métricas del panel

Métrica Descripción Objetivo
Tasa de reembolso % de transacciones reembolsadas <5%
Tasa de contracargo % de transacciones impugnadas <1%
Tasa de ganancias de contracargo % de devoluciones de cargo ganadas >60%
Monto promedio de reembolso Valor medio de reembolso Seguimiento de tendencia
Tiempo de procesamiento del reembolso Tiempo medio de tramitación <24 horas

Informes de acceso

  1. Vaya a PagosAnálisisReembolsos y disputas
  2. Ver paneles en tiempo real
  3. Filtrar por rango de fechas, producto y motivo
  4. Exportar informes para análisis

Mejores prácticas

Gestión de reembolsos

  • Procesar reembolsos rápidamente: los reembolsos rápidos evitan devoluciones de cargos
  • Comuníquese con claridad: informe a los clientes cuándo esperar su reembolso
  • Documente todo: mantenga registros de todas las solicitudes de reembolso y su procesamiento.
  • Analizar patrones de reembolso: identifique productos o servicios con altas tasas de reembolso

Prevención de contracargos

  • Descripciones claras de los productos: evite afirmaciones engañosas
  • Proceso de reembolso sencillo: haga que sea más fácil reembolsar que disputar
  • Confirmación de entrega: proporcione siempre el seguimiento y el comprobante de entrega
  • Comunicación con el cliente: responda a las quejas antes de que escale

Resolución de disputas

  • Responder rápidamente: abordar las quejas de los clientes dentro de las 24 horas
  • Sea justo: ofrezca soluciones razonables antes de que se produzcan devoluciones de cargo
  • Interacciones de documentos: mantenga registros de todas las comunicaciones con los clientes.
  • Aprende de las disputas: utiliza los datos de las disputas para mejorar productos y procesos

¿Qué sigue?

¿Necesitas ayuda?


Aún con dudas? Pregunta en Discord o explore tutoriales