Crédito de Empresa

Tabla de Contenidos

1. Introducción

El módulo Orangecat Company Credit añade una línea de crédito a cada empresa B2B. Las empresas pueden tener un límite de crédito, una moneda y una opción opcional para permitir exceder el límite. Todas las operaciones de crédito se almacenan en un libro mayor (ledger) que registra cargos, reembolsos y ajustes.

2. Configuración (Ajustes del Sistema)

Navega a Tiendas → Configuración → Orangecat → Company Credit para ajustar las siguientes opciones:

  • Activar Crédito de Empresa – Interruptor principal. Cuando se establece en No, el método de pago, la pestaña del frontend y la interfaz de administración se ocultan.
  • Reembolsar crédito al cancelar pedido – Si se establece en , el crédito utilizado para un pedido cancelado se devuelve automáticamente a la empresa.
  • Reembolsar crédito en abono (credit memo) – Si se establece en , la creación de un abono también devolverá el crédito utilizado.
Pantalla de configuración

Figura 2 – Configuración de Crédito de Empresa en el admin de Magento.

3. Configuración del Método de Pago

En la configuración del módulo, activa la opción Activar Crédito de Empresa. Cuando está activada, el método de pago Crédito de Empresa aparecerá en el checkout.

Configuración del Método de Pago

Figura 3 – Configuración del método de pago en la administración.

4. Frontend – Pestaña "Crédito de Empresa" en Mi Cuenta

Los clientes que pertenecen a una empresa verán un nuevo elemento de menú Crédito de Empresa bajo Mi Cuenta → Usuarios de Empresa. La página muestra:

  • Saldo actual, límite de crédito y moneda.
  • Cuadrícula de historial del libro mayor con fecha, importe, referencia del pedido y comentarios.
Pestaña de Crédito de Empresa en el Frontend

Figura 4 – Pestaña de Crédito de Empresa en el panel de control de la cuenta del cliente.

Vista del Checkout

Durante el proceso de checkout, el método de pago "Crédito de Empresa" estará disponible si el módulo está activado y el cliente pertenece a una empresa.

Método de pago Crédito de Empresa en el checkout

Figura 5 – Método de pago Crédito de Empresa en el checkout.

5. Admin – Listado del Libro Mayor y Modal de Reembolso

En el admin, abre Orangecat → Company Credit → Ledger para ver todas las entradas. La cuadrícula ofrece filtros y acciones estándar de Magento.

Cuadrícula del Libro Mayor

Figura 6 – Cuadrícula del libro mayor listando todas las transacciones de crédito.

Para crear un reembolso manual, haz clic en el botón Reembolso en el formulario de edición de la empresa. Aparecerá un modal donde puedes especificar el importe y un comentario opcional.

Modal de Reembolso

Figura 7 – Modal de reembolso para añadir una entrada de crédito.

6. Referencia de la API REST

Todos los endpoints están protegidos por el recurso ACL Orangecat_CompanyCredit::credit. Se requiere un token de portador (bearer token) con privilegios de administrador.

GET /V1/mycompany/credit/:companyId

Obtener condiciones de crédito y saldo actual.

{
  "entity_id": 1,
  "company_id": 1,
  "currency_code": "USD",
  "credit_limit": 5000,
  "balance": 1200,
  "allow_exceed_limit": 0
}

PUT /V1/mycompany/credit/:companyId

Actualizar condiciones de crédito (moneda, límite, permitir exceder).

{
  "currencyCode": "EUR",
  "creditLimit": 10000,
  "allowExceedLimit": 1
}

GET /V1/mycompany/credit/:companyId/ledger

Listar entradas del libro mayor para una empresa.

[
  {
    "entity_id": 5,
    "company_id": 1,
    "amount": 500,
    "order_id": null,
    "comment": "Manual refund via API",
    "created_at": "2026-02-27 20:00:00"
  }
]

POST /V1/mycompany/credit/:companyId/refund

Crear un reembolso (entrada positiva en el libro mayor) y ajustar el saldo.

{
  "amount": 500.00,
  "comment": "Refund for returned merchandise"
}

PUT /V1/mycompany/credit/ledger/:entryId

Editar una entrada existente del libro mayor.

{
  "amount": 600,
  "comment": "Refund amount corrected"
}

DELETE /V1/mycompany/credit/ledger/:entryId

Eliminar una entrada del libro mayor. Nota: el saldo no se ajusta automáticamente; gestiónalo manualmente si es necesario.