OK lets see if we can build a case. The need is for shops who help users create custom products (and produce them via Shapeways) to automatize their customers orders via Shapeways, while not asking customers to leave the shop (plus allowing private products, just to be complete).
I've checked the first few api discussion link, writing down the names of users that seemed to request this explicitely:
- batsheba, whughes98144, hgbrian (this thread)
- Kandam90, pupworkshop, MixeeMe, alexivanovic (
https://www.shapeways.com/forum/index.php?t=msg&th=16740 &start=0&)
- FearlessForms (
https://www.shapeways.com/forum/index.php?t=msg&th=16713 &start=0&)
I've stopped there... I haven't counted a number of others that weren't able to figure out how to integrate with the existing api (which I suspect might be for the same reason, that the api is not targeted enough at their need)
Then, looking at some apps that are featured in shapeways app page: Batsheba, nervous systems, Mymo, Kinematics, MixeeMe, Pupworkshop, Freakin sweet apps.. they all seem to have in common that they would benefit from an automated ordering system.
In summary I think there's a need.
Regarding what would be required: I may be oversimplifying this but I don't think it's a whole lot.
Stores want to ask customers for shipping addresses and then (automatically) ask Shapeways to make and send products to them, via the API.
I don't think sessions would have to be passed. Take a similar process:
When I order on Shapeways, I'll get a UPS package with my thing. But I'll never have any interaction with UPS. UPS will just assume Shapeways is handling the interaction with me as a customer, and also if my thing never arrives I'm most likely going to Shapeways first. Lets say UPS claimed they never got the order. I would then have the expectation that Shapeways deals with UPS, not myself.
To come back to our situation, I would see a similar process:
- I'm using the shapeways API to calculate my custom models prices, material etc.
- my customer selects the object, orders, pays me and provides a shipping address.
- I'll then deal with Shapeways to make the order happen and get it delivered to the customer
And that's what already happens now. It's just so manual that - unless I'm missing something - is rather a pain and doesn't scale at all => less shops and less income for Shapeways.
But Shapeways already has all the infrastructure to make it happen. I'm thinking about a solution along these lines:
- customer designs with the help of my shop (I use existing APIs to check price etc) - Done
- customer orders, providing me with an address and paying for the order (paypal, stripe etc) - Done
- I have a static API key to programmatically connect to *just* my own shapeways shop. After checking into OAuth1 I see that an authorized auth_token should never expire, so I can use that as my API key - Done
- Now, I simply need to make an order to a custom address and send you the money, all *from within* my shop. That's similar to UPS getting the order from Shapeways, not from the customer.
1. For the money transfer, I could make a manual bank transfer covering any number of orders - Done.
2. I need to have an API call sequence somewhere along these lines:
.setShippingAddress(), .getShippingPrice(), .getTotalAmount(), maybe .getOrderSummary(), and .checkout().
That would be it. No additional tokens etc.
Am I missing something?