This checklist covers everything your integration needs to support before we can approve production access. Please review each item, confirm it's implemented and tested in staging (STG), and check it off as you go. Once every item is complete, let us know and we'll schedule the final review with our technical and business teams.
โ ๏ธ Production Credentials Requirement: Every applicable checklist item must be completed before production access can be approved.
Minimum Standard Requirement: If your integration supports a 1:Many setup (one integration serving multiple customers), it must support customer-specific pricing tied to each branch's catalog, customer validation, and order submission must be included as part of the MVP.
๐ 1. Authentication
Your integration can authenticate against the STG environment and successfully generate an access token using your STG client ID and client secret.
โ 2. Customer Validation
Your integration includes a customer validation step and supports validating the customer using either their Integration Key*, which the customer can find in Roof Hub, or their invoice data (Invoice Number and Invoice Date**). This requirement applies only to 1:Many integrations.
* Integration Key: Customers can access their Integration Key in RoofHub: Log in to RoofHub > Integrations (left panel) > Integration key
When placing an order, the integration displays only the branches that are available to the customer's account (no branches the customer doesn't have access to).
The interface displays all job accounts that exist under each branch.
The user can select exactly one branch and one job account before proceeding with the order.
๐ฆ 4. Active Branch Products
Only products available for the selected branch should be shown to the user.
๐ 5. Delivery and Pick Up Options
The user can choose between two delivery types: Delivery or Pick Up.
If Delivery is selected, a second dropdown lets the user choose a delivery window: AM, PM, or Anytime.
If Delivery is selected, a third dropdown lets the user choose a shipping method: Ground Drop, Roof Load, and Roof Edge โ but only the options actually supported by the selected branch are shown.
For Delivery, the integration includes a Date field that offers a "TBD" option, with 2029/12/31 set as the default TBD date if that option is chosen.
If Pick Up is selected, a dropdown lets the user choose a pickup time in 15-minute increments, based on the selected branch's open hours.
๐ฐ 6. Pricing and Order Notes
Pricing shown to the user is adjusted correctly based on the branch and job account selected.
When a product has multiple options (e.g., size and color), combine them into a single grouped value in the payload rather than sending them as separate fields.
Any item with a price of $0 displays the required message: Please call branch for product pricing.
The order notes field is correctly labeled "Instructions to Branch" and is used for that purpose.
The required disclaimer below is shown to the user at checkout.
๐ด Required Checkout DisclaimerโAdditional charges may apply beyond the quoted line item prices. Sales tax will be calculated at checkout based on delivery location. Pricing subject to change between quote and order submission. Unit conversion may affect totals (e.g., SQ to BD conversions).โ
๐ 7. Order Submission
Ensure your Source System value is included in the correct field of the order payload.
Every item submitted with an order includes its Product ID, the selected option/variant, and its unit of measure (UOM).
The transactionDate field must be submitted in ISO 8601 format (YYYY-MM-DDTHH:mm:ss) so it can be correctly inserted into the SRS reporting tables.
Orders can be submitted successfully end-to-end, with no errors.
๐ค 8. Review and Sign-off
The order payload has been reviewed and approved by our technical team.
The order confirmation has been reviewed and approved by our business team.
๐ 9. Webhook Configuration
A webhook to receive order update events is configured in the STG environment, open (no authentication), and ready to receive events.
Once every applicable item is checked, contact APISupportTeam@srsdistribution.com to schedule the final review with the SRS technical and business teams.