Skip to main content

Magento Core API Integration

Connect to the Magento core API—ideal if you want to install any 3rd party plugin or if you have Magento Enterprise Edition.

M
Written by Maureen
Updated this week

Magento API connector connects to Magento via Magento’s core API. That makes the ideal solution if you don't want to install any third-party plugin (DCL offers a Magento Community Edition Plugin solution as well) or if you have Magento Enterprise Edition. Whatever your choice, both DCL Magento connectors allow you to choose the store you need to link to DCL if your Magento handles multiple stores.

To connect Magento to DCL, you will first create an API user for Magento and then provide DCL with that API user’s credentials.

Create a Magento API User with Admin Access

The first step is to create a Magento SOAP/XML-RPC user with admin access.

Magento SOAP/XML-RPC menu

Create an API role

Create a SOAP/XML-RPC Role with access = All

  1. In the System menu, select Web Service > SOAP/XML-RPC – Roles.

  2. If an “All access” role does not already exist, create one by selecting Add New Role.

  3. Give the role a name. (For example, “Admin”)

  4. In the Role Resources tab, select All in the Resource Access dropdown.

  5. Save the role.

Magento API role

Create an API user

Finally, create a SOAP/XML-RPC User with that role:

  1. In the System menu, select Web Service > SOAP/XML-RPC – Users.

  2. Selecting Add New User.

  3. Fill in the required information and make a note of the username and API key you entered—these will also need to be entered in Duoplane.

  4. Give this API user the “All access” role that you just created earlier.

  5. Save the new user.

api_user

Verifying your Magento SOAP API connection

To verify that your Magento SOAP API is working correctly, follow the steps below.

  1. Copy the URL of the admin panel. EXAMPLE: www.mystore.com/admin.

  2. Paste the address in a new browser window.

  3. Replace the admin portion at the end of the URL with api/v2_soap. EXAMPLE: https://mystore.com/index.php/api/v2_soap.

  4. You can verify that your Access URL is correct by pasting it in a new browser window. If XML code loads in your browser window, the URL is correct.

    • If the Magento installation page loads instead of the XML code, there is an issue with the Access URL. If you have Magento version 1.9.0.1, you don't need to revise the Access URL.

Link the Magento Store to the DCL Account

To link one or more of your Magento webstores to a DCL eFactory account, follow the steps below.

  1. Press the Set up your store button at the top of this page. On the form below, enter the URL of your Magento admin store and the Magento API credentials. You don't need to enter the last part of the URL "/api/v2_soap".

    setup_store.png
  2. Press the "Next" button to allow us to connect to your Magento site and retrieve the list of the website stores you have set up on your Magento site.

    setup_store_list.png
  3. From the list, select the store you need to link to a DCL eFactory account (listed in the group "LINK TO DCL") or the store you want to unlink from a DCL account (listed in the group "UNLINK FROM DCL").

  4. If you need to link a store to a DCL account, select the store and fill the form with your DCL eFactory credentials.

    setup_store_link.png
  5. If you need to unlink a store from a DCL account, select the store and press the "Unlink from eFactory" button.

    setup_store_unlink.png

Access to Magento API Connector

Press the Login button at the top of this page. You will be asked to enter the DCL eFactory credentials. If you have linked only a single store, you will be redirected to the connector page "Store Preferences". If you have linked multiple stores, you need to select the store you want to configure.

NOTE: On the 'Store Preferences' page, you have the option to apply the settings only to the selected store or to apply the settings to all of your stores linked to the same DCL account.

General Settings

  • ENABLE DCL API

    Enable DCL background processes to acknowledge and fulfill orders, and update stock quantity.

  • ACKNOWLEDGE ONLY

    DCL will only acknowledge orders but not fulfill them unless requested.

  • COLLECT PRICES

    DCL will collect all the prices for the order.

  • FULFILLMENT NOTIFICATION

    Magento will email a shipping notification to customers upon DCL fulfillment.

  • UPDATE INVENTORY

    DCL will update the store inventory. The background process is scheduled to update your inventory every 4 hours. If you need to update it more frequently, please contact customer support.

  • IN STOCK

    DCL will force the item in stock when the quantity > 0.

  • ORDER PROCESS STATUS

    DCL will process orders with the selected status. You have the option to inform us to import orders only with status "Ready for DCL". This is a custom status that has to be coded as ready_for_dcl In your Magento administration site.

  • ACKNOWLEDGE STATUS

    Optional. Update Magento order status to "DCL Acknowledged" upon DCL order acknowledgment. This is a custom status that has to be coded as order_at_dcl In your Magento administration site.

  • IMPORT DAYS

    DCL will import orders only on these selected days.

  • IMPORT TIME (PST)

    DCL will import orders only in this range of time. Make sure the time range is at least 20 minutes wide.

  • ORDER AGE

    Time allowed for customer changes before the order is transferred to DCL.

Mapping Shipping Methods

Shipping methods defined and enabled in Magento need to be mapped to the DCL shipping methods. Select the tab "Shipping methods" to review and define additional mappings.

You can find the Magento methods titles and names under "System / Configuration / Sales / Shipping Methods" in your Magento administration site.

Examples of Magento shipping methods: Flat Rate - Fixed, FedEx Express - 2 Day, United Parcel Service - Next Day Air.

Be advised that Magento sets the order shipping method as follows: 'Title' - 'Method Name' (note the "dash" character between the two spaces).

Did this answer your question?