Monthly Archives: October 2011

We’re Hiring!

Hundreds have applied, but only two will make it through.

You may have seen our postings a few weeks back about MerchantOS hiring for a couple of positions, the first being an office administrator to help streamline things back at headquarters, and the other a new customer support person to join the best damn support team in the galaxy.

Both positions are tall orders at such a dynamic and fast growing point of sale company, and the hiring team of Luke, Christina, and Justin are looking for just the right people.

For the office admin position, we received 203 applications via our online process, and 86 of those were selected for phone interviews. The support position brought 117 applications, 47 of which will get phone interviews. That’s a whopping 133 phone interviews that the team will be conducting this week!

It shows how important we feel hiring is – we cast a wide net, and want to hear from as many folks as possible in order to hire the exact right person for the job.

Like all things at MerchantOS, hiring is a healthy mix of fun and professionalism. That many phone interviews requires some silliness to break it up and keep it fresh. Intense table tennis matches, reality shows, and just bouts of hysterical laughter are known to break up the intense telephone sessions.

“I’m looking for the best attitude. Skills can be learned, but attitude is often hard to change.”
- CEO Ivan Stanojevic

MerchantOS founder and CEO Ivan Stanojevic said about the process, “My favorite thing about hiring is when we come across good candidates. You can tell pretty quickly if they might work out. Once I have that impression, I love to find out more about them and determine how well they could fit in the company.”

This round of hiring, we’ll be adding two more people to the company, that will make six new team members this year, bringing the company to a total of 14. That’s a lot of growth, and the most in one year by far for MerchantOS. “It’s fascinating more than anything else.” said Ivan, “Of course, this is what I wanted for the company, but seeing it actually materialize can be unbelievable at times. I’m excited, and trying to adapt to the different stages in our company as they come and pass. Nothing stays the same long now.”

The Bottom Line

The biggest message to applicants for these – or any positions we hire for: be yourself, NOTHING you do or say will get you hired on the spot, the process is a proving ground, and we take it seriously. There ARE things that can get you immediately crossed off of the list, the most important of which is not knowing anything about MerchantOS or point of sale. So, use your googles, study our website, learn a little about us – or don’t and keep up that job search.

Well, that’s it for now, we’ve got another few days of phone interviews and then we’ll be moving on to the daunting in-person interview process. Stay tuned!

Exporting UPC’s to Shopify

Using the Shopify integration, MerchantOS can keep your product descriptions, cost, and inventory in sync between the physical inventory in your store and your E-commerce storefront. We’ve had several requests from our customers to send more information, like the product’s UPC, over to Shopify.

With our latest release we are now sending product UPCs, EANs, manufacturer product numbers, and custom SKUs to Shopify in what are known as Metafields. Metafields are a special object on Shopify that allow us to store information that otherwise isn’t supported in the Shopify API. Metafields are not visible in the Shopify interface, but they can be accessed using the Liquid templating language.

Metafields have a namespace and are attached to specific resources in Shopify. We are using the “merchantos” namespace to send our Metafield information and are attaching it to variants.

So to display the UPC information for all of a product’s variants in your Liquid template you could use code similar to:

 {% for variant in product.variants %} {{variant.metafields.merchantos.upc}} {% endfor %} 

You must save a product in MerchantOS for the new Metafields data to be exported.

We are always looking for ways to improve our integrations, and appreciate your feedback. We are working on more improvements to our Shopify integration and will be posting more information when it becomes available.

If you have any questions feel free to contact us.

API Updates

We’ve been getting lots of great feed back about our API. There are several projects that have been using it and we’ve been working with them to answer their questions and solve some problems that they have been running into.

In our latest release we’ve made a few adjustments to how the API works. None of these changes should break compatibility.

Reduced API Rate Limit Penalty

We had a penalty included in our API for when an application went over their call limit. We had found that this penalty was too harsh and we’ve reworked it to allow applications using our API to hit the call limit occasionally without penalizing them.

Return 503 When Over Rate Limit

Previously we had been returning a 500 error when an application went over it’s call limit. We’ve changed that to a 503 Service Unavailable error as that better reflects the error.

JSON input and output

We’ve also been working on adding JSON input and output for requests. Previously we could output JSON, but now we can accept JSON for requests that require a request body.

Disabled WWW-Authenticate header for AJAX Requests

If you are sending an AJAX request we will no longer be sending the WWW-Authenticate header as this causes UI issues with browsers. All other clients will still receive the WWW-Authenticate header when their request could not be authenticated.

Setting a Default Limit on Listing Requests

Previously we did not page results by default. This was causing issues with very large result sets. Now listing requests (such as requesting all items) will by default return 100 objects per request. This behavior can be over-ridden using the limit and offset query parameters (see the API search manual page: https://manual.merchantos.com/index.php/API_Searching). We are also returning the total count of objects, the current offset and limit for a request as attributes on the outer object tag when we automatically limit a request.

Tagging

We have added the ability to write tags through our API. Objects supporting tags (currently only Items) will have a Tags element containing the tags on the object if there are any. The count of the tags will be returned as an attribute of the Tags element.

Tags can be added to an Object by adding xml similar to below:

<Tags>
    <Tag>
        <name>foobar</name>
    </Tag>
</Tags>

The tag does not have to already exist in the account you are accessing, it will be generated when your object is submitted.

All Tags can be accesses through the new Account/<AccountNumber>/Tag endpoint. This will show you how many tags there are as well as what objects are associated with that tag.

Bug fix to IN queries

We fixed a bug that was preventing queries with the IN search operator from executing properly. Queries like the following should now execute:
https://api.merchantos.com/Account/<AccountNumber>/Item?itemID=IN,[2,4,6,8]

More Improvements to Come!

We’re open to your feed back. If you have any questions about the changes we’re introducing please feel free to contact us. If you are having a problem with our API let us know and we will work with you to resolve it. Thanks again to all of the developers using our API for their valuable feedback. We’re working on even more improvements and we will post again when they are released.

Printing Problems

What Happened & And Our Response

Last night (Oct 6th, 2011) we released an update to our system. Printing was not tested before the release. This resulted in customers not being able to print receipts from late on the 6th until 7:40am PST the next morning.

Note: If you are having printer problems now it is not due to the update. Update problems have been fully resolved as of 7:40am PST Oct. 7th, 2011.

Secondly our virtual phone account was reset a few days earlier. We hadn’t fully re-setup our account. This caused urgent voicemails left by customers to be missed. Usually multiple people within the company get a txt message if a customer leaves an urgent. This wasn’t happening.

We take full responsibility for both of these problems. I’m really sorry to anyone who was affected. We take these issues very seriously. Here is what we are going to do to prevent this from happening again:

Testing Before Releases

We have a pretty good run-through of the system that we do before each release. But obviously it was not thorough enough. We are going to create a more explicit pre-release testing checklist.

Phone System Checklist

We will create a checklist for our phone system functionality. That way if our phone system has problems or is being re-setup we have something to run through to make sure all the vital parts are working properly.

Growing = The Winning Team

MerchantOS is growing rapidly, which is awesome. This gives us more resources for development, support, and communication. It means our company is healthy and you as a customer are with a winning team. You get ever improving technology and solid support. If we aren’t moving forward, we are left behind, especially when it comes to technology.

Growing = More Complexity

The downside to growth is that it brings more complexity. Tasks that use to be small and simple have expanded and become complex. We understand and are grappling with the fact that things we use to ‘wing it’ on need to start having a system and safeguards. It’s a balancing act because you don’t want burden yourself with too many slow procedures. We’re working hard at this stuff.

 Comments and Questions

Feel free to leave your thoughts and questions below. Or as always you can email or phone us.

Templates. Have at ‘em.

templates

Templates you say?

Yes, templates I say. Our advanced users (read: tech savvy) now have a way of customizing print jobs from MerchantOS. This feature has been out for a few months now and I thought it’d be nice to give it some deserved recognition. It allows you to safely create a template for your sale receipts, product labels, transfer receipts, workorder receipts, and even purchase order receipts.

We have some stellar examples of templates in our GitHub repository to get you started making snazzier burn marks on your thermal paper.
 

What if I don’t want to make snazzy templates, how about practical ones?

Well fine! Let Uncle Sam down you unpatriotic heathens! For all you busybodies, templates are a great feature for you to experiment with. Want a Facebook footer on the bottom of your receipt? Done. Think we give too much customer information on our receipts? What do you say we hide your customers email and phone number for you? Want to include the Vendor ID on your labels? Ivan took care of that request for you.

 

WOW! Is there anything that templates can’t do for my shop?

As much as I’d like to write down “iron your clothes, babysit your kids and run your business for you” there are some actual limitations to the current build of our templates. If you are using integrated credit card processing you will notice you won’t be getting a signature copy. That is something we will be implementing in the near future. There are some other limitations, but a general rule – if it’s in the XML, it’s possible to display.

 

You didn’t answer all of my questions! Where can I find more information on templates?

Your first stop is our manual page.

If you need to learn more about the template language you’ll be writing in you can review the Twig documentation here.

Now that you understand what you’re writing in and how to implement this, the only thing you’ll need to supplement creating said snazzy templates is our API documentation.

 

We’re looking forward to seeing what you folks can come up with. Now do your patriotic duty and go make us all proud with your .tpl renditions that will help our staff get groped less by TSA agents. Or better your shop, I guess. If you feel like sharing your creativity you can send those templates to murdoc@merchantos.com and we’ll review the .tpl and host it on GitHub.

Cheers!