Integration Summary
- Imports orders
- Option for stock syncronisation
- Updates tracking numbers & despatch status
- Imports product pricing for sales orders
- New Product Sync
- Supports bundles from magento
Add Soap User to Magento
Please login to magento and first create a SOAP/XML API role under system> web services settings
Click add new role & choose a role name such as API or similar:
Now select role resources and change access to ALL & click save:
Now from the same navigation System > Web Services > add new XML/SOAP user
Click add new user and enter the desired username and contact info.
Finally please add a unique GUID API key - please generate from https://www.guidgenerator.com/ or similar:
Now please click user role & allocate the API role to the user and save the user:
Now please provide these details to Mintsoft or if you have access to create the connection yourself you can plug these details straight into Connect > Overview > Magento
Magento Status
Please also note your version of Magento - this will be needed when setting the connection up on Mintsoft - it can be found on the bottom strap of the magento admin panel:
Adding to MintSoft
Please navigate to Connect > Overview > Magento
First thing to note is the URL required - you need to add the following to the store URL: /index.php/api/v2_soap/
e.g. http://www.mintsoft.co.uk becomes http://www.mintsoft.co.uk/index.php/api/v2_soap/
Please enter the URL and API user details created on magento:
Now please select the SOAP version of the API (if unsure please email support@mintsoft.co.uk)
You can also choose the status to collect orders from the store and what status mintsoft will send back when orders are despatched:
You can view / add status in magento:
Mintsoft collects the status code:
Once all has been entered set to Y for active and again choose if stock sync will be enabled and then save
Troubleshooting
WS-I Compliance
check in the system settings under System > Configuration > Magento Core API ->
by default both WSDL & WSI should be on No
Magento 1.7
There is a bug with the 1.7 version of magento - http://www.magentocommerce.com/bug-tracking/issue?issue=13646
Fix is fairly simple
See attached wsi.xml file
Which needs to be replaced in Magento/app/code/core/Mage/Catalog/etc
Magento Soap API Usage
Order Import
1 - Using the Import status we call the salesOrderList API to get a list of all the orders that are in the correct status for importing into magento
https://devdocs.magento.com/guides/m1x/api/soap/sales/salesOrder/sales_order.list.html
2 - We then do an internal check to see if the number exists. If it doesn't we then call the salesOrderInfo APi to get all the details about the order such as products etc which are not contained in salesOrderListAPI request
https://devdocs.magento.com/guides/m1x/api/soap/sales/salesOrder/sales_order.list.html
3- If the order is successfully imported we will then add a comment and change the picking status using:
https://devdocs.magento.com/guides/m1x/api/soap/sales/salesOrder/sales_order.addComment.html
Order Despatch
1 – Create a shipment is magento
2 – If it has a tracking number we then
3 – We then add a comment on the shipment
Type |
Name |
Description |
string |
sessionId |
Session ID |
string |
shipmentIncrementId |
Shipment increment ID |
string |
comment |
Shipment comment (optional) |
string |
|
Send email flag (optional) |
string |
includeInEmail |
Include comment in email flag (optional) |
If the Client has the “Notify When Add Shipment Comment” option enabled on the magneto account in Mintsoft it will set the email flag to TRUE.
4 - If SendShipmentInfo is enabled we then call an undocument api in magento which can trigger the despatch email - SendShipmentInfo
5 – We then move the order to complete status.
https://devdocs.magento.com/guides/m1x/api/soap/sales/salesOrder/sales_order.addComment.html
Stock Sync
1 - For each SKU we call the catalogInventoryStockItemUpdate api:
If the stock level is not zero we set the following options:
Entity.is_in_stock = 1;
Entity.is_in_stockSpecified = true;
Entity.is_qty_decimal = 0;
Entity.is_qty_decimalSpecified = true;
Entity.manage_stock = 1;
Entity.manage_stockSpecified = true;
Comments
0 comments
Please sign in to leave a comment.