Skip to main content

Inxmail

Overview

Inxmail is a professional email marketing platform that can integrate with Karla to trigger automated email workflows based on delivery events throughout the customer journey. This guide explains how to configure Inxmail templates to receive and process Karla events.

How It Works

  1. Event Generation: Karla generates events throughout the delivery journey
  2. Event Transmission: When events occur, Karla sends them to Inxmail using your configured integration (events have to be created in Inxmail first)
  3. Template Matching: Inxmail matches incoming events to templates based on the event group
  4. Email Workflow: Your configured email workflows are triggered automatically

Prerequisites

  • Active Inxmail account with API access
  • Karla integration credentials (configure your Inxmail integration in portal)
  • Understanding of Karla Events

Template Configuration

Base Template Structure

Every Karla event template in Inxmail must follow this XML structure:

Base Event Template
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<event xmlns="http://www.inxmail.com/xcom/eventtype">
<eventtype>
<id>{event_group}</id>
</eventtype>
<customermapping/>
<customeremail>Customer.Email</customeremail>
<phgroup>
<id>Order</id>
<placeholder>
<id>OrderNumber</id>
<datatype-string/>
</placeholder>
<placeholder>
<id>OrderNumberUrlEncoded</id>
<datatype-string/>
</placeholder>
<placeholder>
<id>OrderName</id>
<datatype-string/>
</placeholder>
<placeholder>
<id>TotalOrderPrice</id>
<datatype-double/>
</placeholder>
<placeholder>
<id>OrderCurrency</id>
<datatype-string/>
</placeholder>
<placeholder>
<id>OrderStatusUrl</id>
<datatype-string/>
</placeholder>
<placeholder>
<id>ExternalId</id>
<datatype-string/>
</placeholder>
</phgroup>
<phgroup>
<id>Customer</id>
<placeholder>
<id>Email</id>
<datatype-string/>
</placeholder>
<placeholder>
<id>Name</id>
<datatype-string/>
</placeholder>
<placeholder>
<id>Country</id>
<datatype-string/>
</placeholder>
<placeholder>
<id>ZipCode</id>
<datatype-string/>
</placeholder>
<placeholder>
<id>ShippingAddress</id>
<datatype-string/>
</placeholder>
<placeholder>
<id>ExternalCustomerId</id>
<datatype-string/>
</placeholder>
</phgroup>
<phgroup>
<id>Shipment</id>
<placeholder>
<id>TrackingNumber</id>
<datatype-string/>
</placeholder>
<placeholder>
<id>TrackingUrl</id>
<datatype-string/>
</placeholder>
<placeholder>
<id>CarrierName</id>
<datatype-string/>
</placeholder>
</phgroup>
</event>

Important: Event Group Configuration

The {event_group} placeholder in the template must be replaced with the specific event group you want to listen to. Each event group requires its own template in Inxmail.

Available Event Groups

Karla provides the following event groups that you can configure templates for:

Delivery Events

Event GroupDescriptionUse Case
shipment_deliveredPackage successfully deliveredSend delivery confirmation, request reviews
shipment_delivered_all_eventsAll delivery variationsComprehensive delivery tracking
shipment_delivered_to_neighbourLeft with neighborNotify about neighbor delivery
shipment_delivered_to_letterboxLeft in letterboxConfirm letterbox delivery
shipment_delivered_to_parcel_shopReady at pickup locationPickup reminder with location details
shipment_delivered_to_parcel_lockerIn parcel lockerLocker code and pickup instructions
shipment_picked_upCustomer collected packageConfirm successful collection

Transit Events

Event GroupDescriptionUse Case
shipment_pre_transitOrder processed, awaiting pickupOrder confirmation, packing notification
shipment_in_transitPackage in carrier networkShipping updates, ETA communication
shipment_out_for_deliveryOut for final deliverySame-day delivery alerts

Issue Events

Event GroupDescriptionUse Case
shipment_carrier_delayDelays in transitProactive delay notifications
shipment_damagedPackage damage reportedDamage incident communication
shipment_delivery_failedDelivery attempt unsuccessfulFailed delivery instructions
shipment_delivery_failed_address_issueAddress problemsRequest address clarification
shipment_delivery_failed_forwarded_to_parcel_shopRedirected to pickupNew pickup location info
shipment_delivery_second_attemptRedelivery scheduledSecond attempt notification

Return Events

Event GroupDescriptionUse Case
shipment_not_picked_up_then_returnedNot collected, returningMissed pickup alerts
shipment_refused_then_returnedCustomer refused deliveryRefusal follow-up
shipment_failed_returnedPackage returned to senderReturn process updates

Customer Service Events

Event GroupDescriptionUse Case
claim_createdCustomer submitted claimClaim acknowledgment
claim_updatedClaim status changedResolution updates

Special Events

Event GroupDescriptionUse Case
shipment_lostPackage lost in transitLoss notification and next steps
shipment_delayed_due_to_customer_requestCustomer requested delayConfirmation of delay request

Configuration Steps

1. Create Templates for Each Event Group

For each event group you want to monitor, create a separate template in Inxmail:

Example: Delivery Confirmation Template
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<event xmlns="http://www.inxmail.com/xcom/eventtype">
<eventtype>
<id>shipment_delivered</id>
</eventtype>
<!-- Rest of template structure -->
</event>
Example: Failed Delivery Template
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<event xmlns="http://www.inxmail.com/xcom/eventtype">
<eventtype>
<id>shipment_delivery_failed</id>
</eventtype>
<!-- Rest of template structure -->
</event>
note

You can configure one event with the template and then duplicate it later with a different event name.

2. Configure Email Workflows

For each template, set up corresponding email workflows:

  1. Immediate Notifications: For time-sensitive events (out for delivery, failed delivery)
  2. Delayed Communications: For follow-ups (review requests post-delivery)
  3. Conditional Logic: Different emails based on delivery method or location

3. Use Placeholder Data

In your email templates, use the placeholder data:

  • {{Order.OrderNumber}} - Order reference
  • {{Order.TotalOrderPrice}} - Order value
  • {{Customer.Name}} - Recipient name
  • {{Customer.ZipCode}} - Shipping address postal code
  • {{Shipment.TrackingUrl}} - Direct tracking link
  • {{Shipment.CarrierName}} - Carrier information

Check the template variables for more options.

Best Practices

1. Event Selection Strategy

  • Start Small: Begin with critical events (delivered, failed delivery)
  • Avoid Duplication: Don't listen to overlapping event groups
  • Consider Frequency: High-frequency events may need rate limiting

2. Email Content Guidelines

  • Be Specific: Reference the exact delivery status
  • Include CTAs: Add tracking links and next steps
  • Personalize: Use customer and order data
  • Mobile-Optimize: Most tracking emails are read on mobile

3. Testing Recommendations

  1. Test each event group template separately
  2. Verify placeholder data populates correctly
  3. Check email rendering across devices
  4. Monitor delivery rates and engagement

Common Use Cases

Post-Delivery Review Request

Event Group: shipment_delivered Timing: 2-3 days after delivery Content: Thank you message + review request

Pickup Reminder

Event Group: shipment_delivered_to_parcel_shop Timing: Immediate + daily reminders Content: Pickup location, hours, deadline

Delivery Issue Resolution

Event Group: shipment_delivery_failed Timing: Immediate Content: Failed reason, next steps, support link

Proactive Delay Communication

Event Group: shipment_carrier_delay Timing: As soon as delay detected Content: New ETA, apology, compensation if applicable

Troubleshooting

Events Not Triggering Emails

  1. Verify event group ID matches exactly (case-sensitive)
  2. Check integration credentials are active
  3. Confirm template is published in Inxmail
  4. Test with Karla test events

Missing Data in Emails

  1. Ensure all placeholders match the template structure
  2. Check data type definitions (string vs double)
  3. Verify customer email field mapping

Email Delivery Issues

  1. Check Inxmail sending logs
  2. Verify customer email addresses
  3. Review spam folder placement
  4. Check domain authentication (SPF/DKIM)

Support

  • Karla Integration Support: [email protected]
  • Inxmail Technical Support: Refer to your Inxmail account manager
  • Technical Documentation: Karla Events

Next Steps

  1. Identify which event groups align with your communication strategy
  2. Create templates for your priority events
  3. Design and test email workflows
  4. Monitor performance and optimize