Summary

External platform is a photo community, a merchandise platform or a cross-selling application managed by an external partner (probably you)

External platform can have prices different from the Spreadshirt product prices

Customers buy their items at the external platform and interact with external platform only

Spreadshirt is fulfillment partner means that Spreadshirt does white label fulfillment for the partner only

Spreadshirt has no customer contact

Spreadshirt accepts pixel designs (png, gif, jpg) for simplicity (vector designs are also possible, but they can not instantly be used for product creation)

Spreadshirt does not provide the checkout and only receives orders from external partner

Orders are all ordered on the partners user account (Spreadshirt does not know customers and does not have customer accounts or data) but with the customers address (Spreadshirt produces and ships the items)

Order e-mail address is always the partner e-mail address not the customer e-mail address, so Spreadshirt order tracking e-mails are sent to partners e-mail address

Spreadshirt produces and ships items based on orders from external partner

Spreadshirt produces the items either based on prepayment or based on weekly or monthly invoice

Spreadshirt charges the money from the partner that ordered the items not from the customer (!) based on the price structure configured for the partners Spreadshirt shop

Spreadshirt does white label fulfillment, so we send the ordered items to the address given by the external partner - which usually is the customer address

Example

Let's say we have a partner that operates a photo community. The community works quite simple: photographers can open their own space on the photo community and upload their favorite photos. They can also create t-shirts with these photos. All community members can browse the different spaces of all photographers. They can vote for different photos and they are able to buy either a poster of that photo or a t-shirt with that photo. They can add the posters and t-shirts to the communities basket and use the communities checkout to actually order the item from the partner that opperates the community. However, the partner does not actually produce the poster or the t-shirts himself, but he uses external white label fulfillers to have them produced and shipped to the customers. So, if the customer orders the items at the partner, the partner himself actually sends an order to the white label fulfiller for the particular item - which is Spreadshirt in this scenario for the t-shirts. Additionally, the partner informs his customer about order shipping based on the order state changes of the fulfiller's orders.

1.1. Create a new design data entity for the photo with Spreadshirt
1.2. Upload the design to Spreadshirt (a link to the photo that exists in the photo community already)
1.3. Create a new product with Spreadshirt
1.4. Create a product entity in the photo community that contains the product data relevant for the photo community and a link to the actual Spreadshirt product

1.1. Create Design Entity

Photo Product Creator create the required design entity with Spreadshirt that contains the design meta data. Spreadshirt Data API returns a link to the location of the design entity and the design id.

1.2. Upload Design

Photo Product Creator uploads the actual photo to Spreadshirt using Spreadshirt's image API. Thereby, the Photo Product Creator sends the Spreadshirt image API a pointer to the actual image. Spreadshirt's image API then downloads the image from the given location.

1.4. Create Product for the Photo Community

Photo Product Creator stores "Product with Photo" entity in the Photo Communities database that also contains the id of and a link to the product created with Spreadshirt. This id and the link is later required to actually place the order with Spreadshirt. So the partner store the following data in his product entity:

Customer buys a T-Shirt at the Photo Community

1. Browse Products and Buy Product

A customer of the photo community can browse lists of the created community products, i.e. Product with Photo. He is also able to add these products to the communities basket. He can also buy the items by using the communities checkout paying with credit card at the partner's community for example. When the customer bought the product an order with one order item will be created at the partner side. Both have a unique id. Order and order item would look as follows for our scenario:

Order Entity

Field

Value

Description

id

9

partner's order id

...

Order Item Entity

Field

Value

Description

id

10

partner's order item id

orderId

9

partner's order id

productId

1

partner's product id

state

CREATED

partner's order item state

...

1.1. Submit Order

Having created the order in the photo community database, the partner sends the order to Spreadshirt using Spreadshirt's Order API. The order item contains the data to order the product created by the photographer in the previously described use case, i.e. product 789. The shop id is the id of the partner's shop, i.e. shop 321. The address is the customer's address with the e-mail address of the partner, i.e. ordertracking@photo.community.virtual. This is necessary to avoid that Spreadshirt sends out e-mails to the partner's customers.