Amplify
  • Amplify Documentation
  • Español
    • Introducción
    • GUIAS
      • [GUIA] Integración básica Amplify SDK (Tienda única)
      • [GUIA] Leyendo balances (Tienda única)
    • Creando una cuenta
    • Configurando tu cuenta
    • Obteniendo tus API Key
    • Obteniendo tokens de prueba
    • SDK
      • Instalacion
      • Propiedades
      • Eventos
      • Personalización
      • Interfaces
    • API
      • Intención de pago
      • Balances
      • Retiros
      • Webhooks
      • Links de Pago
      • Reembolsos
  • English
    • Introduction
    • Creating an account
    • Setting up your account
    • Getting your API Keys
    • Faucet
    • SDK
      • Installation
      • Props
      • Events
      • Customization
      • Interfaces
    • API
      • Payment intents
      • Balances
      • Withdraws
      • Webhooks
      • Refunds
Con tecnología de GitBook
En esta página
  • 1. Listar Reembolsos
  • 2. Obtener reembolso por ID
  • 3. Crear reembolso
  • 4. Crear reembolso parcial
  1. Español
  2. API

Reembolsos

Esta API proporciona endpoints para gestionar los reembolsos relacionados con pagos. Incluye la capacidad de crear, recuperar y listar reembolsos.

1. Listar Reembolsos

[GET] /refunds

Retorna una lista de reembolsos basados en los parámetros de consulta. Soporta filtrado, paginación y ordenación.

Solicitud:

const query = {
  page: number,  // Número de página para paginación
  limit: number, // Número de elementos por página
  query: object  // Condiciones de filtrado opcionales
};

Parámetros de Consulta:

  • page: El número de página para paginación (opcional, por defecto es 1).

  • limit: El número de reembolsos para recuperar por página (opcional, por defecto es 10).

  • query: Una lista separada por comas de pares clave-valor para filtrar resultados. Las claves serán los campos de reembolso y los valores se utilizarán para hacer coincidir los campos correspondientes (opcional).

Respuesta:

{
  "refunds": [ /* Array de objetos de reembolsos */ ],
  "page": 1,
  "pageSize": 10,
  "totalPages": 5
}

Ejemplo de Objeto de Reembolso:

{
  "_id": "string",
  "paymentIntentId": "string",
  "paymentId": "string",
  "userId": "string",
  "receiverId": "string",
  "refundTo": "string",
  "amount": 100,
  "status": "PROCESSING",
  "createdAt": "timestamp",
  "updatedAt": "timestamp"
}

2. Obtener reembolso por ID

[GET] /refunds/:id

Retorna un reembolso específico por su ID.

Solicitud:

  • Parámetro de URL:

    • id: El ID del reembolso.

Respuesta:

{
  "_id": "string",
  "paymentIntentId": "string",
  "paymentId": "string",
  "userId": "string",
  "receiverId": "string",
  "refundTo": "string",
  "amount": 100,
  "status": "PROCESSING",
  "createdAt": "timestamp",
  "updatedAt": "timestamp"
}

3. Crear reembolso

[POST] /refunds

Crea un nuevo reembolso para un pago existente.

Solicitud:

{
  "paymentId": "string", // El ID del pago a reembolsar
  "refundTo": "string" // La dirección a la que se enviará el reembolso (debe ser una dirección válida)
}

Respuesta:

{
  "_id": "string",
  "paymentIntentId": "string",
  "paymentId": "string",
  "userId": "string",
  "receiverId": "string",
  "refundTo": "string",
  "amount": 100,
  "status": "PROCESSING",
  "createdAt": "timestamp",
  "updatedAt": "timestamp"
}

Validación:

  • La solicitud debe incluir un paymentId y una dirección refundTo válidos.

  • El paymentId debe corresponder a un pago confirmado.

  • La dirección refundTo debe ser una dirección Ethereum válida (comienza con "0x" y tiene una longitud de 42 caracteres).

  • El monto del reembolso no debe exceder los fondos disponibles en la cuenta del receptor.

  • No se pueden procesar reembolsos si el pago ha sido retirado.

Respuestas de Error:

  • 400 Bad Request: Campos requeridos faltantes o datos inválidos (por ejemplo, dirección inválida, fondos insuficientes).

  • 401 Unauthorized: Si el usuario no está autenticado.

  • 404 Not Found: Si el pago o el reembolso no existen.

  • 500 Internal Server Error: Si ocurre un error inesperado.

4. Crear reembolso parcial

[POST] /refunds/partial

Crea un nuevo reembolso parcial para un pago existente.

Solicitud:

{
  "paymentId": "string",// El ID del pago a reembolsar
  "refundTo": "string",// La dirección a la que se enviará el reembolso (debe ser una dirección válida)
  "amount": "number" // La cantidad solicitada en el reembolso
}

Respuesta:

{
  "_id": "string",
  "paymentIntentId": "string",
  "paymentId": "string",
  "userId": "string",
  "receiverId": "string",
  "refundTo": "string",
  "amount": 100,
  "status": "PROCESSING",
  "createdAt": "timestamp",
  "updatedAt": "timestamp"
}

Validación:

  • La solicitud debe incluir un paymentId y una dirección refundTo válidos.

  • El paymentId debe corresponder a un pago confirmado.

  • La dirección refundTo debe ser una dirección Ethereum válida (comienza con "0x" y tiene una longitud de 42 caracteres).

  • El monto del reembolso no debe exceder los fondos disponibles en la cuenta del receptor.

  • No se pueden procesar reembolsos si el pago ha sido retirado.

Respuestas de Error:

  • 400 Bad Request: Campos requeridos faltantes o datos inválidos (por ejemplo, dirección inválida, fondos insuficientes).

  • 401 Unauthorized: Si el usuario no está autenticado.

  • 404 Not Found: Si el pago o el reembolso no existen.

  • 500 Internal Server Error: Si ocurre un error inesperado.

AnteriorLinks de PagoSiguienteEnglish

Última actualización hace 1 mes