Actualizar la notificación por correo electrónico de solicitud de devolución aprobada para cambios
Si la tienda usa plantillas de notificaciones personalizadas, tal vez debas actualizar manualmente la notificación por correo electrónico Solicitud de devolución aprobada para que funcione cuando agregues artículos de cambio a una devolución.
Estos cambios requieren familiaridad con el código que se usa en las plantillas de notificaciones de Shopify. Si las plantillas están muy personalizadas y no tienes claro cómo aplicar los cambios necesarios, contacta a la persona desarrolladora que los hizo o haz clic en Restaurar valores predeterminados para volver la plantilla a su estado original. Cuando vuelves a los valores predeterminados, se eliminan todas las personalizaciones, pero la plantilla predeterminada garantiza que tengas la versión de plantilla más reciente.
Actualizar la notificación por correo electrónico de solicitud de devolución aprobada
Puedes actualizar la notificación Solicitud de devolución aprobada para incluir estos cambios:
- En los cambios con saldo por pagar, el cliente ahora puede recibir una acción de pago (botón Pagar ahora) en el correo de devolución. Esto incluye actualizaciones en la sección de instrucciones del correo para reflejar el saldo pendiente que el cliente deba, y las instrucciones se mueven al inicio del correo.
- Una sección nueva que muestra los artículos de cambio con el encabezado Artículos que recibirás y cambia el nombre de la sección Artículos devueltos a Artículos para devolver.
- Se incluye un resumen financiero como parte del correo de devolución, con el costo de los artículos devueltos y de cambio, y las tarifas de devolución aplicables.
Pasos:
En el panel de control de Shopify, ve a Configuración > Notificaciones.
Haz clic en Notificaciones de clientes.
En la sección Devoluciones, haz clic en Solicitud de devolución aprobada.
Haz clic en Editar código.
Actualiza el subtítulo para incluir la lógica del envío y el saldo del pedido:
- Ubica la primera línea de código
{% if has_label_attached %}. - Reemplaza el bloque de código existente por el siguiente bloque de código:
- Ubica la primera línea de código
{% if has_label_attached %}
Print your return shipping label and attach it to the package containing your return items.
{% else %}
{% if return_delivery_first.type == 'shopify_label' and return.order_total_outstanding > 0 %}
Your return was approved and a balance is due. Pay the outstanding balance, and once you receive your return shipping label, follow the instructions to complete your return.
{% else %}
We will send you additional information to complete the return.
{% endif %}
{% endif %}- Actualiza las instrucciones de envío de la devolución:
- Ubica la línea de código
<p class="return-approved__body">...</p>. - Agrega el siguiente bloque de código después de esa línea:
- Ubica la línea de código
{% if has_label_attached or has_tracking_number %}
<table class="row section">
<tr>
<td class="section__cell">
<center>
<table class="container">
<tr>
<td>
<h3>Instructions</h3>
</td>
</tr>
</table>
<table class="container">
<tr>
<td>
<ol class="return-approved__instructions">
<li class="return-approved__instruction-step">Pack the items you're returning.</li>
{% if return.checkout_payment_collection_url %}
<li class="return-approved__instruction-step">Pay the outstanding balance.</li>
{% endif %}
<li class="return-approved__instruction-step">Print your return label and attach it to the package. Cover or remove any old shipping labels.</li>
<li class="return-approved__instruction-step">
{% if return_delivery_first.carrier_name %}
Give the package to {{ return_delivery_first.carrier_name }}.
{% else %}
Give the package to the carrier identified on the label.
{% endif %}
</li>
{% if has_tracking_number %}
<li class="return-approved__instruction-step">Track your return to make sure we get it.</li>
{% endif %}
</ol>
{% if has_tracking_number %}
<p class="return-approved__tracking-number">
{% if return_delivery_first.carrier_name %}
{{ return_delivery_first.carrier_name }} tracking number: <a target="_blank" href="{{ return_delivery_first.tracking_url) }}">{{ return_delivery_first.tracking_number) }}</a>
{% else %}
Tracking number: <a target="_blank" href="{{ return_delivery_first.tracking_url) }}">{{ return_delivery_first.tracking_number) }}</a>
{% endif %}
</p>
{% endif %}
</td>
</tr>
</table>
</center>
</td>
</tr>
</table>
{% endif %}- Actualiza el llamado a la acción para incluir la lógica de Pagar ahora :
- Ubica la línea de código
<table class="row actions">...</table>. - Reemplaza el bloque de código existente por el siguiente bloque de código:
- Ubica la línea de código
{% if has_label_attached %}
{% capture url_primary %}{{ public_file_url }}{% endcapture %}
{% capture text_primary %}Print return label{% endcapture %}
{% capture url_secondary %}{{ return.checkout_payment_collection_url }}{% endcapture %}
{% capture text_secondary %}Pay now{% endcapture %}
<table class="row actions">
<tr>
<td class="empty-line"> </td>
</tr>
<tr>
<td class="actions__cell">
{% if url_primary != blank or url_secondary != blank %}
{% if url_primary != blank %}
<table class="button main-action-cell">
<tr>
<td class="button__cell">
<a href="{{ url_primary }}" class="button__text">{{ text_primary }}</a>
</td>
</tr>
</table>
{% endif %}
{% if url_secondary != blank %}
<table class="button return__mobile-padding main-action-cell">
<tr>
<td class="button__cell">
<a href="{{ url_secondary }}" class="button__text return__main-button">{{ text_secondary }}</a>
</td>
</tr>
</table>
{% endif %}
<table class="link secondary-action-cell">
<tr>
<td class="link__cell">or <a target="_blank" href="{{ order.order_status_url }}">View your order</a></td>
</tr>
</table>
{% else %}
<table class="button main-action-cell">
<tr>
<td class="button__cell">
<a href="{{ order.order_status_url }}" class="button__text">View your order</a>
</td>
</tr>
</table>
{% endif %}
</td>
</tr>
</table>
{% else %}
{% capture url_primary %}{{ return.checkout_payment_collection_url }}{% endcapture %}
{% capture text_primary %}Pay now{% endcapture %}
{% capture url_secondary %}{% endcapture %}
{% capture text_secondary %}{% endcapture %}
<table class="row actions">
<tr>
<td class="empty-line"> </td>
</tr>
<tr>
<td class="actions__cell">
{% if url_primary != blank or url_secondary != blank %}
{% if url_primary != blank %}
<table class="button main-action-cell">
<tr>
<td class="button__cell">
<a href="{{ url_primary }}" class="button__text">{{ text_primary }}</a>
</td>
</tr>
</table>
{% endif %}
{% if url_secondary != blank %}
<table class="button return__mobile-padding main-action-cell">
<tr>
<td class="button__cell">
<a href="{{ url_secondary }}" class="button__text return__main-button">{{ text_secondary }}</a>
</td>
</tr>
</table>
{% endif %}
<table class="link secondary-action-cell">
<tr>
<td class="link__cell">or <a target="_blank" href="{{ order.order_status_url }}">View your order</a></td>
</tr>
</table>
{% else %}
<table class="button main-action-cell">
<tr>
<td class="button__cell">
<a href="{{ order.order_status_url }}" class="button__text">View your order</a>
</td>
</tr>
</table>
{% endif %}
</td>
</tr>
</table>
{% endif %}- Elimina las instrucciones anteriores al final de la notificación:
- Ubica la línea de código
<h3>Instructions</h3>. - Ubica y elimina todo el bloque de código
<table class="row section">...</table>.
- Ubica la línea de código
- Agrega las líneas de artículo de cambio y actualiza el título de los artículos de devolución:
- Ubica la etiqueta
<h3>Return summary</h3>. - Reemplaza la tabla externa que coincide con
<table class="row section">por el siguiente bloque:
- Ubica la etiqueta
{%- if return.line_items.size > 0 -%}
<table class="row section">
<tr>
<td class="section__cell">
<center>
<table class="container">
<tr>
<td>
<h3>Items to return</h3>
</td>
</tr>
</table>
<table class="container">
<tr>
<td>
<table class="row">
{% for line_item in return.line_items %}
<tr class="order-list__item">
<td class="order-list__item__cell">
<table>
<td>
{% if line_item.image %}
<img src="{{ line_item | img_url: 'compact_cropped' }}" align="left" width="60" height="60" class="order-list__product-image"/>
{% endif %}
</td>
<td class="order-list__product-description-cell">
{% assign line_display = line_item.quantity %}
<span class="order-list__item-title">{{ line_item.title_without_variant }} × {{ line_display }}</span><br/>
{% if line_item.variant.title != 'Default Title' %}
<span class="order-list__item-variant">{{ line_item.variant.title }}</span><br/>
{% endif %}
{% if line_item.discount_allocations %}
{% for discount_allocation in line_item.discount_allocations %}
{% if discount_allocation.amount > 0 %}
<p>
<span class="order-list__item-discount-allocation">
<img src="{{ 'notifications/discounttag.png' | shopify_asset_url }}" width="18" height="18" class="discount-tag-icon" />
<span>
{{ discount_allocation.discount_application.title | upcase }}
(-{{ discount_allocation.amount | money }})
</span>
</span>
</p>
{% endif %}
{% endfor %}
{% endif %}
</td>
<td class="order-list__price-cell">
{% if line_item.original_line_price != line_item.final_line_price %}
<del class="order-list__item-original-price">{{ line_item.original_line_price | money }}</del>
{% endif %}
<p class="order-list__item-price">
{% if line_item.final_line_price > 0 %}
{% capture final_line_price %}
{{ line_item.final_line_price | money }}
{% endcapture %}
{{ final_line_price }}
{% else %}
Free
{% endif %}
</p>
</td>
</table>
</td>
</tr>
{% endfor %}
</table>
</td>
</tr>
</table>
</center>
</td>
</tr>
</table>
{%- endif -%}
{%- if return.exchange_line_items.size > 0 -%}
<table class="row section">
<tr>
<td class="section__cell">
<center>
<table class="container">
<tr>
<td>
<h3>Items you'll receive</h3>
</td>
</tr>
</table>
<table class="container">
<tr>
<td>
<table class="row">
{% for line_item in return.exchange_line_items %}
<tr class="order-list__item">
<td class="order-list__item__cell">
<table>
<td>
{% if line_item.image %}
<img src="{{ line_item | img_url: 'compact_cropped' }}" align="left" width="60" height="60" class="order-list__product-image"/>
{% endif %}
</td>
<td class="order-list__product-description-cell">
{% assign line_display = line_item.quantity %}
<span class="order-list__item-title">{{ line_item.title_without_variant }} × {{ line_display }}</span><br/>
{% if line_item.variant.title != 'Default Title' %}
<span class="order-list__item-variant">{{ line_item.variant.title }}</span><br/>
{% endif %}
{% if line_item.discount_allocations %}
{% for discount_allocation in line_item.discount_allocations %}
{% if discount_allocation.amount > 0 %}
<p>
<span class="order-list__item-discount-allocation">
<img src="{{ 'notifications/discounttag.png' | shopify_asset_url }}" width="18" height="18" class="discount-tag-icon" />
<span>
{{ discount_allocation.discount_application.title | upcase }}
(-{{ discount_allocation.amount | money }})
</span>
</span>
</p>
{% endif %}
{% endfor %}
{% endif %}
</td>
<td class="order-list__price-cell">
{% if line_item.original_line_price != line_item.final_line_price %}
<del class="order-list__item-original-price">{{ line_item.original_line_price | money }}</del>
{% endif %}
<p class="order-list__item-price">
{% if line_item.final_line_price > 0 %}
{% capture final_line_price %}
{{ line_item.final_line_price | money }}
{% endcapture %}
{{ final_line_price }}
{% else %}
Free
{% endif %}
</p>
</td>
</table>
</td>
</tr>
{% endfor %}
</table>
</td>
</tr>
</table>
</center>
</td>
</tr>
</table>
{%- endif -%}- Incorpora los datos financieros y las tarifas de devolución. Agrega el siguiente bloque después de los cambios del paso anterior o agrégalo antes de la línea de código
<table class="row footer">:
<table class="row">
{% for line_item in return.exchange_line_items %}
<tr class="order-list__item">
<td class="order-list__item__cell">
<table>
<td>
{% if line_item.image %}
<img src="{{ line_item | img_url: 'compact_cropped' }}" align="left" width="60" height="60" class="order-list__product-image"/>
{% endif %}
</td>
<td class="order-list__product-description-cell">
{% assign line_display = line_item.quantity %}
<span class="order-list__item-title">{{ line_item.title_without_variant }} × {{ line_display }}</span><br/>
{% if line_item.variant.title != 'Default Title' %}
<span class="order-list__item-variant">{{ line_item.variant.title }}</span><br/>
{% endif %}
{% if line_item.discount_allocations %}
{% for discount_allocation in line_item.discount_allocations %}
{% if discount_allocation.amount > 0 %}
<p>
<span class="order-list__item-discount-allocation">
<img src="{{ 'notifications/discounttag.png' | shopify_asset_url }}" width="18" height="18" class="discount-tag-icon" />
<span>
{{ discount_allocation.discount_application.title | upcase }}
(-{{ discount_allocation.amount | money }})
</span>
</span>
</p>
{% endif %}
{% endfor %}
{% endif %}
</td>
<td class="order-list__price-cell">
{% if line_item.original_line_price != line_item.final_line_price %}
<del class="order-list__item-original-price">{{ line_item.original_line_price | money }}</del>
{% endif %}
<p class="order-list__item-price">
{% if line_item.final_line_price > 0 %}
{% capture final_line_price %}
{{ line_item.final_line_price | money }}
{% endcapture %}
{{ final_line_price }}
{% else %}
Free
{% endif %}
</p>
</td>
</table>
</td>
</tr>
{% endfor %}
</table>
</td>
</tr>
</table>
</center>
</td>
</tr>
</table>
{%- endif -%}
<table class="row content">
<tr>
<td class="content__cell">
<center>
<table class="container">
<tr>
<td>
<table class="row subtotal-lines">
<tr>
<td class="subtotal-spacer"></td>
<td>
<table class="row subtotal-table">
{% capture line_items_subtotal_price %}
{% if return.line_items_subtotal_price < 0 %}
-{{ return.line_items_subtotal_price | abs | money }}
{% else %}
{{ return.line_items_subtotal_price | money }}
{% endif %}
{% endcapture %}
<tr class="subtotal-line">
<td class="subtotal-line__title">
<p>
<span>Subtotal</span>
</p>
</td>
<td class="subtotal-line__value">
<strong>{{ line_items_subtotal_price }}</strong>
</td>
</tr>
{% assign fees = return.fees %}
{% for fee in fees %}
<tr class="subtotal-line">
<td class="subtotal-line__title">
<p>
<span>{{ fee.title }}</span>
</p>
</td>
<td class="subtotal-line__value">
<strong>{{ fee.subtotal | money }}</strong>
</td>
</tr>
{% endfor %}
{% if return.total_tax_price %}
{% capture total_tax_price %}
{% if return.total_tax_price < 0 %}
-{{ return.total_tax_price | abs | money }}
{% else %}
{{ return.total_tax_price | money }}
{% endif %}
{% endcapture %}
<tr class="subtotal-line">
<td class="subtotal-line__title">
<p>
<span>Estimated taxes</span>
</p>
</td>
<td class="subtotal-line__value">
<strong>{{ total_tax_price }}</strong>
</td>
</tr>
{% endif %}
{% if return.total_price > 0 %}
<table class="row subtotal-table subtotal-table--total">
<tr class="subtotal-line">
<td class="subtotal-line__title">
<p>
<span>Amount to pay</span>
</p>
</td>
<td class="subtotal-line__value">
<strong>{{ return.total_price | money_with_currency }}</strong>
</td>
</tr>
</table>
{% elsif return.total_price <= 0 %}
<table class="row subtotal-table subtotal-table--total">
<tr class="subtotal-line">
<td class="subtotal-line__title">
<p>
<span>Estimated refund</span>
</p>
</td>
<td class="subtotal-line__value">
<strong>{{ return.total_price | abs | money_with_currency }}</strong>
</td>
</tr>
</table>
{% endif %}
</table>
</td>
</tr>
</table>
</td>
</tr>
</table>
</center>
</td>
</tr>
</table>- Haz clic en Guardar.