API de Cupones de Descuento - FlowCoupons
La clase FlowCoupons permite gestionar cupones de descuento en Flow.cl, proporcionando métodos para la creación, edición, eliminación, obtención y listado de estos cupones.
Inicialización
import Flow from "@nicotordev/flowcl-pagos";
const flow = new Flow("tu_api_key", "tu_secret_key", "sandbox"); // o 'production'
const coupons = flow.coupons;
Métodos Disponibles
Obtener un cupón de descuento
coupons.get(couponId: string): Promise<FlowGetDiscountCouponResponse>
- Request:
couponId:string(ID del cupón de descuento)
- Response:
FlowGetDiscountCouponResponseid:string(ID del cupón de descuento)name:string(Nombre del cupón)percent_off:number | null(Descuento en porcentaje, si aplica)amount:number | null(Monto del descuento, si aplica)currency:string | null(Moneda del descuento, si aplica)status:number(0o1si está activo o inactivo)createdAt:string(Fecha de creación)
Crear un nuevo cupón de descuento
coupons.create(data: FlowCreateDiscountCouponRequest): Promise<FlowCreateDiscountCouponResponse>
- Request:
FlowCreateDiscountCouponRequestincluye:name:string(Nombre del cupón)percent_off:number | null(Descuento en porcentaje, opcional)currency:string | null(Moneda del descuento, opcional)amount:number | null(Monto del descuento, opcional)duration:0 | 1(Duración del cupón: indefinida = 0, definida = 1)times:number | null(Número de veces aplicable, opcional)max_redemptions:number | null(Número máximo de usos, opcional)expires:string(Fecha de expiración en formatoYYYY-MM-DD)
- Response:
FlowCreateDiscountCouponResponseid:string(ID del cupón de descuento)name:string(Nombre del cupón)percent_off:number | null(Descuento en porcentaje, si aplica)amount:number | null(Monto del descuento, si aplica)currency:string | null(Moneda del descuento, si aplica)status:number(0o1si está activo o inactivo)created:string(Fecha de creación)duration:number(0o1si es indefinido o definido)times:number | null(Número de veces aplicable, si aplica)max_redemptions:number | null(Número máximo de usos, si aplica)expires:string(Fecha de expiración)
Editar un cupón de descuento
coupons.edit(data: FlowEditDiscountCouponRequest): Promise<FlowEditDiscountCouponResponse>
- Request:
FlowEditDiscountCouponRequestincluye:couponId:string(ID del cupón a editar)name:string(Nuevo nombre del cupón)
- Response:
FlowEditDiscountCouponResponseid:string(ID del cupón de descuento)name:string(Nombre del cupón)percent_off:number | null(Descuento en porcentaje, si aplica)amount:number | null(Monto del descuento, si aplica)currency:string | null(Moneda del descuento, si aplica)status:number(0o1si está activo o inactivo)created:string(Fecha de creación)duration:number(0o1si es indefinido o definido)times:number | null(Número de veces aplicable, si aplica)max_redemptions:number | null(Número máximo de usos, si aplica)expires:string(Fecha de expiración)
Eliminar un cupón de descuento
coupons.delete(couponId: string): Promise<FlowDeleteDiscountCouponResponse>
- Request:
couponId:string(ID del cupón a eliminar)
- Response:
FlowDeleteDiscountCouponResponseid:string(ID del cupón de descuento)name:string(Nombre del cupón)percent_off:number | null(Descuento en porcentaje, si aplica)amount:number | null(Monto del descuento, si aplica)currency:string | null(Moneda del descuento, si aplica)status:number(0o1si está activo o inactivo)created:string(Fecha de creación)duration:number(0o1si es indefinido o definido)times:number | null(Número de veces aplicable, si aplica)max_redemptions:number | null(Número máximo de usos, si aplica)expires:string(Fecha de expiración)
Listar cupones de descuento
coupons.list(data: FlowListDiscountCouponsRequest): Promise<FlowListDiscountCouponsResponse>
- Request:
FlowListDiscountCouponsRequestincluye:start:number(Número de inicio de la lista, opcional)limit:number(Número de cupones por página, opcional)filter:string(Filtro por nombre, opcional)
- Response:
FlowListDiscountCouponsResponsetotal:number(Número total de cupones de descuento)hasMore:number(0o1si hay más cupones)data:string(Array de cupones de descuento)
Manejo de Errores
| Error | Descripción |
|---|---|
FlowAPIError | Error genérico de la API de Flow. |
FlowAuthenticationError | Error de autenticación con la API de Flow. |
FlowCreateDiscountCouponError | Error al crear un cupón de descuento. |
FlowEditDiscountCouponError | Error al editar un cupón de descuento. |
FlowDeleteDiscountCouponError | Error al eliminar un cupón de descuento. |
FlowGetDiscountCouponError | Error al obtener un cupón de descuento. |
FlowListDiscountCouponsError | Error al listar cupones de descuento. |
Para más detalles, visita Flow.cl API Docs.
Nota: Asegúrate de manejar correctamente todas las excepciones en tu aplicación.