Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 16 Next »

Short description

The app allows you to synchronise your subscribers with Maileon, send order details to Maileon or create an RSS feed of your products.

Versions

Oxid eShop version

Plugin version

Download

Oxid eShop 6.x.x

Maileon Oxid Module 1.3.x

Plugin 6.x.x

Oxid eShop 7.x.x

Maileon Oxid Module 1.4.x

Plugin 7.x.x

Installation

The plugin can be installed from the command line. The installation steps:

  • Unzip the package and copy the content (xqueue) into your [SHOPROOTDIR]/source/modules/ directory

  • Add the repository to composer.json.

    composer config repositories.xqueue/maileon-oxid-module \
     --json '{"type":"path", "url":"./source/modules/xqueue/maileon-oxid-module", "options": {"symlink": true}}'
  • Add the maileon-oxid-module to composer

    composer require xqueue/maileon-oxid-module --no-update
    composer update --no-interaction
  • Install module
    Oxid eShop 6.x.x

    vendor/bin/oe-console oe:module:install-configuration source/modules/xqueue/maileon-oxid-module/

    Oxid eShop 7.x.x

    vendor/bin/oe-console oe:module:install source/modules/xqueue/maileon-oxid-module/
    vendor/bin/oe-console oe:module:install-assets
  • Activate the plugin at admin

    or activate at command line.

    vendor/bin/oe-console oe:module:activate xq_maileonoxidmodule

After installing, you need to set up a cronjob and an optional cronjob if you want to use the abandoned cart functionality.

Plugin status cronjob (Run every day once)

0 4 * * * curl "http(s)://[MYSHOPURL]/index.php?cl=maileonstatus" >> [some-path-to-a-log-file] 2>&1

Abandoned cart cronjob (optional) (Run every 5 minutes)

*/5 * * * * curl "http(s)://[MYSHOPURL]/index.php?cl=maileonabandonedcart" >> [some-path-to-a-log-file] 2>&1

Uninstallation

The plugin can be installed from the command line. The installation steps:

  • Deactivate the plugin at admin or at the command line

    vendor/bin/oe-console oe:module:deactivate xq_maileonoxidmodule
  • Uninstall the module:
    Oxid eShop 6.x.x

    vendor/bin/oe-console oe:module:uninstall-configuration xq_maileonoxidmodule

    Oxid eShop 7.x.x

    vendor/bin/oe-console oe:module:uninstall xq_maileonoxidmodule
  • Remove the package from composer

    composer remove xqueue/maileon-oxid-module --no-update
    composer update --no-interaction

Settings

After installation you can see the settings interface at the plugin Settings tab.

Subshops

With Oxid Enterprise edition, sub shop management is also possible. In this case you can choose on the top left of the admin page which sub shop settings you want to see. This allows you to set different configuration settings per sub shop.

maileon-oxid-settings.png

Connection settings

Maileon API Key

The API Key can be created and viewed in the Maileon account under "Settings" → "API Keys" and ensures the connection to the account. Common errors:

  • Validity period exceeded

  • Key was deactivated in Maileon

  • Characters were truncated at the beginning or end

Synchronisation of subscribers

Enabled

Here you can enable/disable the synchronisation of Oxid eShop subscribers with Maileon.

Initial permission in Maileon

  • None: No permission. The contact will not receive newsletters, only transaction emails (e.g. reservation confirmation mail).

  • Single Opt-in: Permission was simply granted, e.g. by entering an email address in a form. This method technically allows the contact to receive newsletters, but does not ensure that the email address belongs to the person who entered it.

  • Confirmed Opt-in: With the confirmed opt-in, a confirmation e-mail is sent to the e-mail address after registering for the newsletter. However, this does not contain an additional confirmation link as with the double opt-in, the newsletter registration is valid immediately.

  • Double Opt-in: With this permission, a confirmation email with a confirmation link is sent to the email address. Only when the link in the mail has been clicked and thus the interest in the entry has been confirmed, the contact can be sent.

  • Double Opt-in Plus: Double opt-in including consent for single user tracking. Please note: Without individual user tracking, no openings, clicks, etc. may be traced back to individual users and significant data for evaluating newsletter performance is missing.

  • Other: If no permission can be proven, the "Other procedure" method can be selected. However, this is expressly not recommended. Permission must always be proven.

DOI process enabled

If we enable the DOI process, then when the contact is created a confirmation email will be sent to the email address with a confirmation link, which if the contact clicks on will give them Double Opt-In Plus access to Maileon, regardless of what we have set in the above setting. If this option is not turned on, the contact will receive the permission set above instantly, without any confirmation.

DOI mailing id

Here you can enter a DOI mailing ID, which determines which DOI mailing should be triggered as soon as a contact subscribes to the newsletter. The identifier can be set in Maileon or retrieved from the corresponding DOI mailing in the default settings. If the Maileon account has a default DOI mailing set in the settings, this field does not need to be filled in. Common mistake:

  • The DOI process above will be enabled but the DOI key is not specified here and no default DOI mailing is set in the Maileon account.

Webhook token for DOI confirmation and unsubscription

We will use webhooks from Maileon to synchronise DOI confirmers and unsubscribers back. These webhooks need to be set up in Maileon, to set them up you need to enter this token. The token can be any text that does not contain spaces.

Initial synchronisation

Enabled

Initial synchronisation allows you to create subscribers in Maileon that were created before using the plugin. It is sufficient to run this once when you start using the plugin, after that the subscribers will be synchronized automatically. You can enable synchronisation here, see below for more information on running synchronisation.

Permission if imported contacts

You can set the permission for contacts to be created during import. This is a final permission, the DOI process will not run.

  • None: No permission. The contact will not receive newsletters, only transaction emails (e.g. reservation confirmation mail).

  • Single Opt-in: Permission was simply granted, e.g. by entering an email address in a form. This method technically allows the contact to receive newsletters, but does not ensure that the email address belongs to the person who entered it.

  • Confirmed Opt-in: With the confirmed opt-in, a confirmation e-mail is sent to the e-mail address after registering for the newsletter. However, this does not contain an additional confirmation link as with the double opt-in, the newsletter registration is valid immediately.

  • Double Opt-in: With this permission, a confirmation email with a confirmation link is sent to the email address. Only when the link in the mail has been clicked and thus the interest in the entry has been confirmed, the contact can be sent.

  • Double Opt-in Plus: Double opt-in including consent for single user tracking. Please note: Without individual user tracking, no openings, clicks, etc. may be traced back to individual users and significant data for evaluating newsletter performance is missing. newsletter performance is missing.

  • Other: If no permission can be proven, the "Other procedure" method can be selected. However, this is expressly not recommended. Permission must always be proven.

Order confirmation transactions send to Maileon

Enabled

Here you can allow orders to be transferred to Maileon as contact events. See below for more details.

RSS feed

Enabled

Here you can enable the generation of RSS feed for your products. See below for more details.

Abandoned carts

Enabled

Here you can enable the abandoned cart functionality. (Cronjob needed)

After how many minutes a shopping cart should be reminded

here you can set after how many minutes the plugin will send abandoned cart transactions to Maileon. The minimum is 5 minutes and can be increased by 5 minute intervals.

DOI process

If you disable the DOI process in the plugin, you should also disable it in the shop, otherwise it may lead to different functionality and vice versa if you enable the DOI process in the plugin, you should also enable it in the shop.

Here you can set at the admin: Master Settings → Core Settings → Settings → Administration

Initial synchronisation

Initial synchronisation allows you to create subscribers in Maileon that were created before using the plugin. It is sufficient to run this once when you start using the plugin, after that the subscribers will be synchronized automatically.

Once you have enabled and set the permissions in the plugin settings, the import can be started at the following url:

https://[MYSHOPURL]/index.php?cl=initialmaileonsync

Order confirmation

Once enabled in the plugin settings, after each order, the order details will be transferred to Maileon as a contact event.

Contact event name: oxid_eshop_orders_2.0

The following data will be transferred:

Name

Type

Description

order.id

string

Order number

order.date

datetime (YYYY-MM-DD)

Order date

order.status

string

Order status

order.items

json

Ordered items

order.product_ids

string

Comma-separated list with the ordered product ids

order.product_names

string

Comma-separated list with the ordered product names

order.categories

string

Comma-separated list with the ordered product category names

order.subcategories

string

Comma-separated list with the ordered product subcategory names

order.brands

string

Comma-separated list with the ordered product manufacturer names

order.total

float

Order total

order.total_no_shipping

float

Order total without shipping cost

order.total_tax

float

Order tax

order.total_fees

float

Order fees total

order.fees

json

Order fee names

order.total_refunds

float

Order refunds total

order.refunds

json

Order refund names

order.currency

string

Order currency

payment.method.id

string

Payment method id

payment.method.name

string

Payment method name

customer.fullname

string

Customer full name

customer.firstname

string

Customer first name

customer.lastname

string

Customer last name

customer.id

string

Customer id

billing.address.salutation

string

Billing salutation

billing.address.firstname

string

Billing first name

billing.address.lastname

string

Billing last name

billing.address.street

string

Billing address

billing.address.zip

string

Billing zip

billing.address.city

string

Billing city

billing.address.country

string

Billing country

shipping.address.salutation

string

Shipping salutation

shipping.address.firstname

string

Shipping first name

shipping.address.lastname

string

Shipping last name

shipping.address.street

string

Shipping address

shipping.address.zip

string

Shipping zip

shipping.address.city

string

Shipping city

shipping.address.country

string

Shipping country

shipping.service.name

string

Shipping service name

shipping.service.tracking.code

string

Shipping service tracking code

Order items

Name

Type

Description

id

string

Product id

sku

string

Product sku

url

string

Product url

single_price

float

Product single price

total

float

Product total

name

string

Product name

short_description

string

Product short description

tax_rate

float

Product tax rate

image_url

string

Product image url

quantity

integer

Ordered quantity

Contact fields at Maileon

Name

Maileon type

Datatype

salutation

standard

string

firstname

standard

string

lastname

standard

string

fullname

standard

string

address

standard

string

hnr

standard

string

zip

standard

string

city

standard

string

country

standard

string

state

standard

string

Oxid_Transaction

custom

boolean

Oxid_NL

custom

boolean

oxid_shop_id

custom

string

oxid_subscription_id

custom

string

RSS feed

Once you have enabled RSS feed in the plugin settings, you can access the feed at the following url:

https://[MYSHOPURL]/index.php?cl=maileonrss

Available optional parameters

  • lang => Id of the requested language ( 0 default, 1 en )

  • articlenum => Article number of one single requested article

  • limit => limit the list of all returned articles

Maileon webhooks

To synchronize DOI confirmers and unsubscribers we need Maileon webhooks. You can configure them in your Maileon account under Settings->Webhooks.

DOI confirm webhook

HTTP post URL: https://[MYSHOPURL]/index.php?cl=maileondoi

URL parameters:

  • external_id → Contact external id

  • token → The token you set in the plugin settings

Unsubscribers webhook

HTTP post URL: https://[MYSHOPURL]/index.php?cl=maileonunsubscribe

URL parameters:

  • external_id → Contact external id

  • token → The token you set in the plugin settings

Abandoned carts

Once enabled in the plugin settings and cronjob is configured, it will send abandoned cart transactions to Maileon after the configured time.

Contact event name: oxid_eshop_abandoned_carts_1.0

The following data will be transferred:

Name

Type

Description

cart.id

string

Order number

cart.date

datetime (YYYY-MM-DD)

Order date

cart.items

json

Cart items

cart.product_ids

string

Comma-separated list with the ordered product ids

cart.product_names

string

Comma-separated list with the ordered product names

cart.categories

string

Comma-separated list with the ordered product category names

cart.subcategories

string

Comma-separated list with the ordered product subcategory names

cart.brands

string

Comma-separated list with the ordered product manufacturer names

cart.total

float

Cart total

cart.total_no_shipping

float

Cart total without shipping cost

cart.total_fees

float

Cart other fees

cart.currency

string

Cart currency

customer.fullname

string

Customer full name

customer.firstname

string

Customer firstname

customer.lastname

string

Customer lastname

customer.id

string

Customer Id

Cart items

Name

Type

Description

id

string

Product id

sku

string

Product sku

url

string

Product url

single_price

float

Product single price

total

float

Product total

name

string

Product name

short_description

string

Product short description

tax_rate

float

Product tax rate

image_url

string

Product image url

quantity

integer

Ordered quantity

  • No labels