The Email Fulfillment connector sends each shipping request to one or more email addresses, for example a warehouse or supplier that doesn't have its own integration. It only sends email. Pipe17 doesn't read replies and doesn't update the order based on them.
Note: To email shipping labels only, use the separate Email Shipping Labels tile. See Connect Email Shipping Labels to Pipe17. This article covers the Email Fulfillment tile.
Setup
Before you begin
- The email address or addresses that should receive shipping requests, for example your warehouse's order inbox. Pipe17 doesn't need a login or credentials for them.
- A mailbox you monitor for replies, to use as the Reply To Email address.
- Order routing that sends the orders this partner fulfills to the location the integration creates. See Creating Order Routing Rules.
- Optional: the list of shipping method codes the recipient understands, if you want to map your selling channel shipping methods to them.
Prepare the recipients and email content
- Confirm the recipient address or addresses with the person or team who fulfills the orders. Every shipping request goes to all of them.
- Decide which address receives replies. Without a Reply To Email address, replies go to a Pipe17 no-reply address and nobody reads them.
- Tell the recipients that the emails come from a Pipe17 sending address, not from your own domain. Ask them to allow it so the emails don't land in spam.
- Agree on what the email contains. By default, each email has the subject
Shipping Request for Order {{extOrderId}} for {{merchantName}}and a body with:- The order number and the shipping request number.
- Each line item: SKU, item name and ordered quantity.
- The shipping address, including email and phone when the order has them.
- The shipping method and the shipping note, when the order has them.
- Your merchant name and support email.
- Agree on how the recipient tells you an order shipped. The connector doesn't pull tracking numbers back.
Connect in the app
- Navigate to Integrations and click Add integration.
- Search for Email Fulfillment and select it. The Connect Email Fulfillment pop-up opens.
Note: Leave Push shipping requests off on the integration's Settings tab until you confirm the connection.
- In Recipient Email address(es), enter each address that should receive shipping requests.
- In Reply To Email address, enter the mailbox that should receive replies.
- Click Connect.
Note: If you don't have the addresses yet, click Add without credentials. Enter them later on the Connection Details tab and click Save. Don't turn on Push shipping requests until a recipient is set. With no recipient, the app still moves shipping requests to Sent To Fulfillment but sends no email.
Confirm the connection
- On Integrations, check that the Email Fulfillment integration shows Connected and that its switch is on.
- Within a few minutes, go to Inventory > Locations and check that the integration created its location.
- Pick one test order whose shipping request is routed to that location and is in Ready for Fulfillment status.
- In the integration settings, add the order ID to Process only shipping requests with specific order IDs. Turn on Push shipping requests and click Save.
- Wait about 5 minutes. The app checks for shipping requests every 5 minutes. Check that the recipient got the email and that the shipping request moved to the status in Apply Shipping Request status after email is sent (Sent To Fulfillment by default). If it moved to Failed, see Troubleshooting.
- Remove the order ID from Process only shipping requests with specific order IDs and click Save.
Settings
Connection Flow Settings
| Pull locations | Creates one location for this integration. Route shipping requests to it so they're sent by email. Default: on. |
| Push shipping requests | Sends an email for each shipping request in Ready for Fulfillment status at this integration's location, every 5 minutes. Default: off. |
Shipping requests
| Process only shipping requests with specific order IDs | Sends emails only for the order IDs you enter. Use it for testing, then clear it. |
| Apply Shipping Request status after email is sent | The status the shipping request gets after the email is sent: Sent To Fulfillment (default) or Fulfilled. Fulfilled marks every line item as shipped in full. Use it only if you don't expect any further update for these orders. |
| Include shipping labels as attachments | Attaches the shipping labels on the shipping request (PDF, PNG or JPG) to the email. If a label can't be loaded, the shipping request moves to Failed and no email is sent. Default: off. |
| Merchant Name | The value of {{merchantName}} in the templates. If empty, the organization name in Pipe17 is used. |
| Merchant Support Email | The value of {{merchantEmail}} in the templates. If empty, the organization contact email in Pipe17 is used. The email is still sent from a Pipe17 address, not from this one. |
| Merchant Support Phone Number | The value of {{merchantPhone}} in the templates. If empty, the organization contact phone in Pipe17 is used. |
| Template for fulfillment request email subject | Subject of the shipping request email. Default: Shipping Request for Order {{extOrderId}} for {{merchantName}}. If empty, the default is used. |
| Template for fulfillment request email body | HTML body of the shipping request email. If empty, the default body is used. |
| Send cancellation email | Sends a cancellation email when a shipping request sent by this integration is canceled, including canceled with restock. Default: on. |
| Template for fulfillment cancellation email subject | Subject of the cancellation email. Default: [CANCELLED] Shipping Request for Order {{extOrderId}} for {{merchantName}}. If empty, the default is used. |
| Template for fulfillment cancellation email body | HTML body of the cancellation email. The default body has the order number and shipping request number. If empty, the default is used. |
| Shipping Codes | The shipping method codes the recipient understands. The app adds them as shipping methods for this integration, so you can map selling channel shipping methods to them. The first code is the default. If empty, the email shows the shipping code from the selling channel as is. |
Email templates
The subject and body templates use Handlebars syntax: put a field name in double curly braces, for example {{extOrderId}}. Field names are case-sensitive. You can use the fields of the shipping request (the setting's help text links to the full list in the Pipe17 API reference) and the three merchant fields. Fields used by the default templates:
{{extOrderId}} |
Order number |
{{extShipmentId}} |
Shipping request number |
{{shipmentId}} |
Pipe17 shipping request ID |
{{#each lineItems}} {{this.sku}} {{this.name}} {{this.quantity}} {{/each}} |
Line items: SKU, name and quantity |
{{shippingAddress.firstName}}, {{shippingAddress.lastName}}, {{shippingAddress.address1}}, {{shippingAddress.address2}}, {{shippingAddress.city}}, {{shippingAddress.stateOrProvince}}, {{shippingAddress.zipCodeOrPostalCode}}, {{shippingAddress.country}}, {{shippingAddress.email}}, {{shippingAddress.phone}}
|
Shipping address |
{{shippingCode}} |
Shipping method |
{{shippingNote}} |
Shipping note |
{{merchantName}}, {{merchantEmail}}, {{merchantPhone}}
|
Merchant fields from the settings |
To go back to the default subject or body, clear the template field and click Save.
Troubleshooting
- The shipping request moved to Sent To Fulfillment, but nobody got an email.
Recipient Email address(es) may be empty on the Connection Details tab. With no recipient, the app updates the status but sends nothing. Add the addresses and click Save. Also ask the recipient to check spam. Delivery isn't guaranteed. To send the email again, re-run the outbound email event from the Events menu. - No email is sent for a shipping request.
Check that Push shipping requests is on, that the shipping request is in Ready for Fulfillment status and routed to this integration's location, and that Process only shipping requests with specific order IDs is empty or includes the order. - The shipping request moved to Failed.
The email couldn't be sent, or Include shipping labels as attachments is on and a label couldn't be loaded. Check that the label exists on the shipping request, or turn the setting off, then send the shipping request again. - Replies to the email don't reach you.
Reply To Email address is empty, so replies go to a Pipe17 no-reply address. Enter your mailbox on the Connection Details tab and click Save. - The email isn't from your company's address.
That's expected. Emails always come from a Pipe17 sending address. Merchant Name and Merchant Support Email only fill in the template fields. - A template field shows up empty in the email.
Check the field name and its case, for example{{extOrderId}}, not{{extorderid}}. Fields that the order doesn't have stay empty. - No cancellation email is sent.
Turn on Send cancellation email. - New shipping codes don't show up for mapping.
The app updates the shipping methods from Shipping Codes at most once a day. Check again the next day.
Need Help?
If you need additional assistance:
- Use Ask Pippen, our AI agent, located at the top of the platform page.
- Submit a support request with as much relevant detail as possible. Learn how to submit a request.
We’re here to help you succeed with your operations.
Comments
0 comments