wc_delete_coupon: eliminar un cupón
Envía un cupón a la papelera o lo elimina de forma permanente. Marcado como destructivo.
Argumentos
| Argumento | Obligatorio | Significado |
|---|---|---|
id |
Sí | El cupón |
force |
No | Eliminar permanentemente en lugar de enviar a la papelera |
dry_run |
No | Informar sin eliminar |
Permisos
Allow WooCommerce catalog writes abierto, además de manage_woocommerce o edit_shop_coupons.
Revisa el cupón exacto
La vista previa valida que el ID sea un cupón que el actor puede eliminar e incluye sus campos actuales. Comprueba su código y su importe antes de aprobar. Un tipo de objeto incorrecto o la falta de capacidad de eliminación se rechaza antes de la aprobación.
Expirar es casi siempre mejor
Eliminar un cupón que ya se ha usado pierde el registro de cuál era el código y qué regalaba. Establecer un date_expires pasado con wc_update_coupon hace que deje de funcionar, mantiene el registro legible y es reversible.
Elimina únicamente los cupones creados por error o que nunca se publicaron.
La papelera mantiene el código reservado
Sin force, el cupón va a la papelera —recuperable desde el administrador de WordPress y conservando aún su código. Recrear ese código falla mientras exista el cupón en la papelera.
A menudo ese es el comportamiento deseado: un código de campaña retirado sigue inutilizable y no puede recrearse. Pero sorprende a quienes intentan volver a emitir un código anual como BLACKFRIDAY.
Para liberar el código, vacía la papelera con wc_empty_coupon_trash.
force es irreversible
Con force: true el cupón desaparece. No hay historial de revisiones para los cupones, así que, a menos que lo leas de antemano, el importe, el tipo y la caducidad son irrecuperables.
Los pedidos pasados que usaron el cupón conservan su descuento —eliminar no reescribe el historial—, pero el registro del cupón que respalda esos pedidos ya no existe, lo que dificulta interpretar los informes posteriores.
Eliminar no reembolsa ni revierte nada
Un código activo deja de funcionar en el pago, inmediatamente. Los clientes a quienes se les comunicó y aún no lo han usado simplemente reciben un error.
Si un código está en circulación, la eliminación es un cambio público. Secuéncialo: anuncia, expira y luego elimina después, si acaso.
Confirma por código, no por ID
Los IDs de cupón se parecen entre sí y las listas quedan obsoletas.
Elimina el cupón cuyo código es OLDSPRING —dime su ID y confirma el código antes de eliminar.
Eliminar el cupón equivocado no es recuperable con force, y con la papelera solo es recuperable si alguien se da cuenta.
Después de eliminar
- Enumera los cupones y confirma que se eliminó el correcto.
- Si el código debe reutilizarse, vacía la papelera.
- Prueba el código en un carrito y confirma que se rechaza.
Problemas comunes
| Síntoma | Causa |
|---|---|
| La escritura se rechaza | La puerta de escritura del catálogo está cerrada |
| La eliminación aprobada falló | Inspecciona el destino y el error devuelto; no repitas a ciegas |
pom_ai_mcp_wc_coupon_not_found |
ID incorrecto, o ya eliminado |
pom_ai_mcp_wc_forbidden |
Falta manage_woocommerce o edit_shop_coupons |
| El código no puede recrearse | El cupón antiguo está en la papelera |
| No puede restaurarse | Se usó force |
| Los clientes informan de un código no válido | Esperable; fue eliminado |
Relacionado
wc_update_coupon— expirar es la alternativa reversiblewc_empty_coupon_trashwc_get_coupon— lee antes de eliminar
Permisos de objeto
El acceso al catálogo por sí solo no autoriza todos los objetos. Las actualizaciones y las lecturas privadas comprueban el objeto seleccionado; las operaciones con variaciones también comprueban su producto principal. La eliminación requiere capacidades de eliminación. Crear un cupón requiere capacidades de creación y publicación de cupones; crear un atributo global requiere manage_product_terms. Toda escritura usa el flujo de trabajo de aprobación.