> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ycloud.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Actualizar el estado del pedido

## Antes de actualizar el estado del pedido

Antes de actualizar el estado del pedido, **asegúrate de que el pedido haya sido pagado**. YCloud te enviará el estado de pago mediante este [webhook](/es/api-reference/webhooks/test-webhooks).&#x20;

Recibirás actualizaciones cuando cambie el estado de la transacción iniciada por el usuario. Esto ocurre cuando el estado del pago cambia a `captured` (cuando el pago se completa con éxito) o a `pending` (cuando el usuario lo intenta pero aún no ha recibido una señal de transacción exitosa).

Ejemplo:

```
{
  "id": "evt_eEkn26qar3nOB8md",
  "type": "whatsapp.payment.updated",
  "apiVersion": "v2",
  "createTime": "2024-10-10T07:08:00.000Z",
  "whatsappPayment": {
    "wabaId": "WABA-ID",
    "referenceId": "<reference-id>",
    "status": "captured | pending",
    "transactions": [
      {
        "id": "<transaction-id>",
        "type": "billdesk | payu | razorpay | zaakpay",
        "status": "pending | success | failed",
        "createdTimestamp": 1728544066000,
        "updatedTimestamp": 1728544066000,
        "amount": {
          "value": 21000,
          "offset": 100
        },
        "currency": "INR",
        "methodType": "upi | card | wallet | netbanking",
        "error": {
          "code": "error-code",
          "reason": "error-reason"
        }
      }
    ]
  }
}
```

## Valor de enumeración del estado del pedido

| Valor | Descripción |
| - | - |
| `pending` | El usuario aún no ha pagado con éxito |
| `processing` | Pago del usuario autorizado, el comerciante/socio está procesando el pedido, prestando el servicio, etc. |
| `partially-shipped` | Una parte de los productos del pedido ha sido enviada por el comerciante |
| `shipped` | Todos los productos del pedido han sido enviados por el comerciante |
| `completed` | El pedido se ha completado y no se espera ninguna acción adicional por parte del usuario o del socio/comerciante |
| `canceled` | El socio/comerciante desea cancelar el mensaje `order_details` para el pedido/factura. La actualización del estado fallará si ya existe un pago `successful` o `pending` para este mensaje `order_details` |

<img src="https://mintcdn.com/lchnan/WD-ixrYVrqB7b7aQ/product-assets/3be4b91634-image-596.webp?fit=max&auto=format&n=WD-ixrYVrqB7b7aQ&q=85&s=a91122cebfd41c2afbedd93da2cf01f3" alt="Captura de pantalla del producto de YCloud" width="765" height="307" data-path="product-assets/3be4b91634-image-596.webp" />

## ¿Cómo notificar a los clientes sobre los cambios en el estado del pedido?

Puedes notificar a los clientes enviando una plantilla de Actualizaciones de estado de pedido cuando un pedido esté confirmado o enviado.

p. ej., cuando se ha enviado un pedido, puedes enviar una plantilla de **Order Status Updates** al cliente, informándole sobre el estado actualizado.

### Crear plantilla de actualización del estado del pedido

<Info>
  El requisito previo es haber vinculado tu cuenta de pago.
</Info>

1. Crear mediante API

Referencia de la API: [Crear una plantilla](/api-reference/whatsapp-templates/create-a-template)

Ejemplo de creación: [Crear una plantilla](/api-reference/whatsapp-templates/create-a-template)

2. Crear en YCloud

Visita [https://www.ycloud.com/console/#/app/dashboard/template](https://www.ycloud.com/console/#/app/dashboard/template)

<img src="https://mintcdn.com/lchnan/6CxA7mK2t7klNAOL/product-assets/9b7f2f2c98-image-597.webp?fit=max&auto=format&n=6CxA7mK2t7klNAOL&q=85&s=69883deedf4517a575e99109af6fa9d9" alt="Captura de pantalla del producto de YCloud" width="1592" height="827" data-path="product-assets/9b7f2f2c98-image-597.webp" />

### Enviar mensaje de actualizaciones del estado del pedido

Referencia de la API: [Enviar un mensaje directamente](/api-reference/whatsapp-messages/send-a-message-directly)

ejemplo:

```
curl 'https://api.ycloud.com/v2/whatsapp/messages/sendDirectly' \
-H 'Content-Type: application/json' \
-H 'X-API-Key: {{YOUR-API-KEY}}' \
-d '{
  "from": "{{BUSINESS-PHONE-NUMBER}}",
  "to": "{{CUSTOMER-PHONE-NUMBER}}",
  "type": "template",
  "template": {
    "name": "order_status_template",
    "language": {
      "policy": "deterministic",
      "code": "en_US"
    },
    "components": [
      {
        "type": "order_status",
        "parameters": [
          {
            "type": "order_status",
            "order_status": {
              "reference_id": "<reference_id_value>",
              "order": {
                "status": "processing | partially_shipped | shipped | completed | canceled",
                "description": "<OPTIONAL_DESCRIPTION>"
              }
            }
          }
        ]
      }
    ]
  }
}'
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.