Class CreditNotesController
- Namespace
- KadicErp.WebApi.Controllers.FiscalAdjustments
- Assembly
- KadicErp.WebApi.dll
[ApiController]
[Authorize]
[Route("api/fiscal-adjustments/credit-notes")]
public class CreditNotesController : ControllerBase
- Inheritance
-
objectControllerBaseCreditNotesController
Constructors
CreditNotesController(IMediator, IStringLocalizer<GeneralMessages>)
public CreditNotesController(IMediator mediator, IStringLocalizer<GeneralMessages> localizer)
Parameters
mediatorIMediatorlocalizerIStringLocalizer<GeneralMessages>
Methods
Apply(Guid, ApplyCreditNoteRequest)
Aplicar el crédito de una NC contra un documento de CXC específico. Reduce el saldo pendiente del documento objetivo y marca la NC como Applied/PartiallyApplied.
[HttpPost("{id:guid}/apply")]
[Authorize(Policy = "RECEIVABLES_CREDIT_NOTES_APPLY")]
public Task<IActionResult> Apply(Guid id, ApplyCreditNoteRequest request)
Parameters
idGuidrequestApplyCreditNoteRequest
Returns
- Task<IActionResult>
Create(CreateCreditNoteCommand)
Crear una Nota de Crédito fiscal (NC). Genera NCF y registra crédito disponible para el cliente.
[HttpPost]
[Authorize(Policy = "RECEIVABLES_CREDIT_NOTES_CREATE")]
public Task<IActionResult> Create(CreateCreditNoteCommand command)
Parameters
commandCreateCreditNoteCommand
Returns
- Task<IActionResult>
GetAll(GetCreditNotesPaginatedQuery)
Listar Notas de Crédito con paginación y filtros opcionales. Filtros: customerId, branchId, fiscalStatus, financialStatus, issuedFrom, issuedTo.
[HttpGet]
[Authorize(Policy = "RECEIVABLES_CUSTOMER_ACCOUNTS_VIEW")]
public Task<IActionResult> GetAll(GetCreditNotesPaginatedQuery query)
Parameters
queryGetCreditNotesPaginatedQuery
Returns
- Task<IActionResult>
GetById(Guid)
Obtener detalle completo de una Nota de Crédito por su Id.
[HttpGet("{id:guid}")]
[Authorize(Policy = "RECEIVABLES_CUSTOMER_ACCOUNTS_VIEW")]
public Task<IActionResult> GetById(Guid id)
Parameters
idGuid
Returns
- Task<IActionResult>
GetByInvoice(Guid)
Obtener todas las Notas de Crédito vinculadas a una factura base.
[HttpGet("by-invoice/{invoiceId:guid}")]
[Authorize(Policy = "RECEIVABLES_CUSTOMER_ACCOUNTS_VIEW")]
public Task<IActionResult> GetByInvoice(Guid invoiceId)
Parameters
invoiceIdGuid
Returns
- Task<IActionResult>