All For Funds

The client runs a consignment business, using CrossPostIt to sell her items on a number of marketplaces. She wasn’t happy with the Storefront site offered and wanted her own custom eCommerce site.

Consignment is very different than standard commerce. Generally, you only have one of any given item. This presented unique challenges that had to be overcome. We weren’t worried, because we love conquering these types of challenges.

Serviced Provided

Work We Performed:

  • CrossPostIt API Integration
  • Custom Plugin Development
  • Third-Party Plugin Customization
  • Back-End Programming (PHP)

Third-Party Tools

Created Using:

  • Theme: OCIN
  • Archived Post Status
  • WP Lister (for eBay)
  • WooCommerce
  • Cart Stock Reducer

Pre-Development Insight

The Problem We Faced!

Oh boy, where do we begin? CrossPostIt (previously SellerVantage) offers an API, but the API wasn’t designed for what the client wanted to accomplish. Before we could begin development, we had to find solutions for many hurdles.

The first hurdle was how to pull data from CrossPostIt and create products within WooCommerce. However, the API didn’t provide all the critical data we needed. So we improvised!

We had to reach out to CrossPostIt and request adjustments to their API. Without the requested adjustments, there was no way to accomplish the client’s goals. Fortunately, CrossPostIt implemented the adjustments and we were in business!

Product Listing

The products were imported from eBay using WP Lister Import from eBay to WooCommerce.  Many of the photos were landscape and some were portrait.  The import didn’t provide information on which orientation an image was, so we had to build custom funtionality to ensure they rendered properly within the Product Listing page.

Seller Vantage API

One of the challenging issues was the API we had to integrate.  The API was not designed to work with CrossPostIt the way we needed it to (accessing internal data), but instead it was designed to input data – from the outside.  We worked with developers, from CrossPostIt, to get a few improvements made to their API – which they were quick to implement.

Consignment

The largest reason we couldn’t take out CrossPostIt was because the client ran a consignment business.  Most of her inventory was sold on behalf of her clients, which CrossPostIt had support for tracking consignment commissions.  Due to her only having 1 item in stock, we implemented a reservation script to make sure only 1 user could buy a single product.

One Item, Multiple Sales Channels

Since the client was using CrossPostIt, she was posting products on multiple sales channels and we were importing those products into WooCommerce.  Since she had 1 item in stock, we had to make frequent API calls to ensure the product hadn’t sold on any of the other channels before selling on her site.  This required an “Internal ID” from CrossPostIt, which is what we had to gain access to – for the API.

Pushing the Envelope

If you ask the creators of WP Lister, their Import Tool was not designed for what we were using it for.  In fact, they recommend against it.  However, it was an effective tool for pulling all of the information and being able to track when products sold on eBay.  Once the products were imported, we connected to CrossPostIt to get some more information and then used CrossPostIt to track the product’s status.

Reusability

While the client’s requirements were definitely unique, we build all custom plugins to be reusable.  The custom plugin for CrossPostIt’s API is still viable and has continued working for over 2 years.  We added in an Administration Dashboard to allow the plugin to be installed on other websites.  With a little more finesse, it can be used to upload products to CrossPostIt, from WordPress.

Our Thoughts!

I love a challenge, but this project was almost too much. To many clients, it is expected that everything should be possible. That is 100% true when you are working with 100% custom code. However, when you rely on third-party resources, many limitations are quickly found.

In order for us to work on this project, we had to get a much larger company to change their work. If they hadn’t been willing to make the necessary adjustments, the client wouldn’t have been able to proceed. For any project where CrossPostIt is integrated, using their Internal IDs, we were directly responsible for that being implemented into the API.

Many developers would have given up, but we knew there was a way and helped pave it. We are here for our clients and we will have your back, no matter what we may come up against.

Christopher Ervin

Technical Director,Excidium Tech, LLC

Excidium Tech