Interoperability Requirements

The Interoperability requirements define the ways in which Mall on Rails works with other systems to deliver the user a seamless experience with the other systems they work with regularly.

Definitions

The Schema.org specification
The Schema.org specification defines structured data schemas for use on Web pages. The Product specification is especially important to the Mall on Rails project and can be read online.

Goals

  1. To allow customers of storefronts utilising the Mall on Rails system to save time and effort when purchasing items from the store.
  2. To allow store owners utilising the Mall on Rails system to integrate their existing business processes and systems into their storefront.

Exclusions

  1. The system shall not allow store owners to use their owner account as a customer account.
  2. The system shall not integrate with the social network platform formerly known as Twitter.

Requirements

  1. The system shall allow customers to sign in using an external authentication service in lieu of registering a new account.
    1. The system shall not allow multiple accounts to exist with the same email address.
    2. The system shall support the following external authentication services:
      1. Apple ID (Sign In with Apple).
      2. Facebook.
      3. Google.
      4. Microsoft (This requirement has low priority for the initial release.)
    3. The system shall authenticate with the external service to ensure the email address provided is accurate and owned by the user.
  2. The system shall require store owners to sign in using the WTI SSO service.
    1. Each storefront shall have its own SSO group, and the system shall be configured to only allow store owners from the specified store group to authenticate.
  3. The system shall process customer payments via the customer's choice of method, based on the payment integration systems configured in the store.
  4. The system shall allow store owners to configure payment integration details for at least the following systems:
    1. Stripe.
    2. PayPal.
    3. Square. (This requirement has low priority for the initial release.)
  5. The system shall support bidirectional synchronisation of inventory with external inventory systems: (This requirement has low priority for the initial release.)
    1. Square POS.
    2. Auctions+.
  6. The system shall support sharing of items to Pinterest, including tracking pins via an existing pin ID set on the item by the store owner.
  7. The system shall provide Open Graph tags on all pages, including detailed product information as specified in the Schema.org specification.
  8. The system shall support sharing of items to Facebook, using the same Facebook App ID provided by the store owner to enable Sign In with Facebook.
  9. The system shall support generating tracking links for shipments sent via these carriers:
    1. United States Postal Service (USPS).
    2. FedEx.
    3. UPS.
  10. The system shall support retrieving delivery status when provided a tracking number from one of the carriers listed in Interoperability-9.
  11. The system shall refresh the delivery status of provided tracking numbers every hour during business hours, which are defined at 7 AM to 9 PM Eastern.
  12. The system shall send a notification to the customer when their package has been marked delivered by the carrier.