This Master Service Agreement ("MSA" or "Agreement") is entered into between RafterCore LLC, a Arizona limited liability company doing business as RafterCore ("RafterCore," "Provider," "we," or "us"), and the entity identified in the Order Form executed in connection with this Agreement ("Customer," "you"). This MSA governs Customer's access to and use of the RafterCore platform and is effective on the date the Order Form is countersigned by both parties ("Effective Date").
| Term | Definition |
|---|---|
| "Affiliate" | Any entity that directly or indirectly controls, is controlled by, or is under common control with a party, where "control" means ownership of more than 50% of the voting interests. |
| "Authorized User" | Any employee, contractor, or agent of Customer who is authorized by Customer to access the Platform under Customer's account. |
| "Confidential Information" | Any non-public information disclosed by one party to the other in connection with this Agreement that is designated as confidential or that reasonably should be understood to be confidential given the nature of the information and circumstances of disclosure. |
| "Customer Data" | All data, content, and information submitted to or generated through the Platform by Customer or its Authorized Users, including homeowner records, job files, photos, estimates, invoices, and communications. |
| "Documentation" | RafterCore's user guides, help articles, and technical specifications made available at raftercore.com or through the Platform. |
| "Fees" | The amounts payable by Customer for the Subscription and any additional services, as specified in the Order Form. |
| "Order Form" | A written order document executed by both parties that specifies the subscription plan, number of seats, Fees, and Term. |
| "Platform" | The RafterCore cloud-based SaaS roofing contractor management software, including all features, APIs, and associated services made available by RafterCore under this Agreement. |
| "Subscription" | Customer's right to access and use the Platform during the Term, as specified in the Order Form. |
| "Subscription Term" | The initial and any renewal subscription period specified in the Order Form. |
| "Usage Data" | Aggregated, anonymized data about Customer's use of the Platform (e.g., feature usage frequency, performance metrics), which does not identify Customer or any individual. |
Subject to the terms of this Agreement and timely payment of Fees, RafterCore grants Customer a limited, non-exclusive, non-transferable, non-sublicensable right to access and use the Platform during the Subscription Term solely for Customer's internal business operations in connection with its roofing contracting business.
Customer may permit its Authorized Users to access the Platform. The number of Authorized Users is specified in the Order Form. Customer is responsible for: (a) ensuring Authorized Users comply with this Agreement; (b) the acts and omissions of all Authorized Users; and (c) maintaining the confidentiality of all account credentials. Customer will promptly notify RafterCore of any unauthorized access to or use of its account.
The Platform features available to Customer are determined by the subscription plan specified in the Order Form. Current plan features are described at raftercore.com/#pricing and may be updated by RafterCore with 30 days' notice, provided that no material reduction in functionality will be made without Customer's consent during a paid Subscription Term.
Any implementation, onboarding, training, or custom development services beyond standard self-service onboarding must be described in a separate Statement of Work ("SOW") executed by both parties. Professional services are provided on a time-and-materials basis unless otherwise specified in the SOW.
RafterCore may update, modify, or discontinue features of the Platform at any time, provided that: (a) RafterCore will not materially reduce core functionality during a paid Subscription Term without Customer's consent; (b) RafterCore will provide at least 60 days' notice before discontinuing a material feature; and (c) security patches and bug fixes may be deployed without prior notice.
Customer shall not, and shall ensure Authorized Users do not: (a) reverse engineer, decompile, or disassemble the Platform; (b) copy, modify, or create derivative works based on the Platform; (c) rent, sublicense, sell, or transfer access to the Platform to any third party; (d) use the Platform to develop a competing product; (e) circumvent or disable any security or access control mechanisms; (f) upload malicious code, interfere with Platform integrity, or conduct unauthorized penetration testing; or (g) use the Platform in violation of applicable law.
Customer shall pay RafterCore the Fees specified in the Order Form. All Fees are in U.S. dollars and are non-refundable except as expressly stated in this Agreement.
Unless otherwise specified in the Order Form, Fees for annual subscriptions are invoiced annually in advance. Monthly subscriptions are billed monthly in advance via Stripe. RafterCore will provide invoices via email to Customer's designated billing contact.
Invoices are due within 30 days of the invoice date. Overdue amounts accrue interest at the lesser of 1.5% per month or the maximum rate permitted by law. RafterCore may suspend access to the Platform if payment is more than 15 days overdue, after providing written notice and a 7-day cure period.
Fees are exclusive of applicable taxes, levies, or duties, including sales, use, VAT, or withholding taxes. Customer is responsible for paying all such taxes, excluding taxes on RafterCore's net income. If RafterCore is required to collect taxes, they will be added to Customer's invoice.
RafterCore may adjust Fees upon renewal of a Subscription Term with at least 60 days' written notice prior to the renewal date. Price increases during an active annual Subscription Term require Customer's written consent.
Customer must notify RafterCore in writing of any disputed invoice within 15 days of the invoice date. The parties will work in good faith to resolve disputes within 30 days. Undisputed portions of invoices remain due and payable on their original due date.
RafterCore commits to a monthly uptime of 99.5%, calculated as: (Total Minutes − Downtime Minutes) / Total Minutes × 100. "Downtime" means the Platform is unavailable to all users for more than 5 consecutive minutes, excluding Scheduled Maintenance.
RafterCore will provide at least 48 hours' advance notice for scheduled maintenance that may cause Platform unavailability. Scheduled maintenance will be performed during off-peak hours (10 PM – 6 AM CT on weekdays, or weekends) when possible. Scheduled maintenance periods do not count as Downtime for SLA purposes.
If monthly uptime falls below 99.5% in any calendar month (excluding Scheduled Maintenance), Customer may request a service credit equal to:
| Monthly Uptime | Credit (% of monthly Fee) |
|---|---|
| 99.0% – 99.49% | 5% |
| 95.0% – 98.99% | 15% |
| Below 95.0% | 25% |
Credits must be requested within 30 days of the month in which the downtime occurred and will be applied to the next invoice. Credits are Customer's sole and exclusive remedy for SLA failures and do not entitle Customer to terminate this Agreement.
Uptime commitments do not apply to unavailability caused by: (a) Customer's acts or omissions, including misconfigurations or unauthorized modifications; (b) Third-party service failures (Stripe, Supabase, Google Maps, etc.) beyond RafterCore's reasonable control; (c) Force majeure events; (d) Customer's internet connectivity issues; or (e) Actions of Customer or its Authorized Users in violation of this Agreement.
RafterCore provides support via email at contact@raftercore.com during business hours (8 AM – 6 PM CT, Monday–Friday, excluding U.S. federal holidays). Enterprise customers may be eligible for priority support as specified in the Order Form. Critical issues (Platform-wide outages affecting Customer's ability to operate) will receive best-effort response within 4 business hours.
RafterCore retains all right, title, and interest in and to the Platform, Documentation, Usage Data, and all improvements, modifications, or derivative works thereof, including all intellectual property rights therein. No rights are granted to Customer except as expressly set forth in this Agreement. RafterCore's name, logo, and trademarks are owned by RafterCore and may not be used without prior written consent.
Customer retains all right, title, and interest in and to Customer Data. Customer grants RafterCore a limited, non-exclusive, royalty-free license to access, store, process, and transmit Customer Data solely as necessary to provide the Services under this Agreement. RafterCore will not use Customer Data for any purpose other than providing the Services.
If Customer provides RafterCore with feedback, suggestions, or ideas regarding the Platform ("Feedback"), Customer grants RafterCore a perpetual, irrevocable, royalty-free license to use and incorporate such Feedback into the Platform or any future products without obligation to Customer.
RafterCore may collect and use Usage Data to improve the Platform, develop new features, and for benchmarking and reporting purposes, provided that Usage Data does not identify Customer or any individual. RafterCore owns all Usage Data.
Each party ("Receiving Party") agrees to: (a) hold the other party's ("Disclosing Party") Confidential Information in strict confidence; (b) use Confidential Information only as necessary to perform obligations or exercise rights under this Agreement; and (c) restrict disclosure of Confidential Information to its employees, contractors, and advisors who have a need to know and are bound by obligations of confidentiality no less protective than those in this Agreement.
Confidential Information does not include information that: (a) is or becomes publicly available through no breach of this Agreement; (b) was rightfully known to the Receiving Party prior to disclosure without restriction; (c) is independently developed by the Receiving Party without use of Confidential Information; or (d) is rightfully obtained from a third party without restriction.
A Receiving Party may disclose Confidential Information if required by law, regulation, court order, or government authority, provided that the Receiving Party: (a) gives the Disclosing Party prompt written notice to the extent permitted by law; (b) cooperates with the Disclosing Party's efforts to seek a protective order; and (c) discloses only the minimum amount of Confidential Information required.
Confidentiality obligations survive termination or expiration of this Agreement for a period of three (3) years, except that obligations with respect to trade secrets continue indefinitely.
The parties' obligations with respect to the processing of personal data are governed by RafterCore's Data Processing Agreement ("DPA"), available at raftercore.com/dpa, which is incorporated into this Agreement by reference. In the event of a conflict between this Agreement and the DPA with respect to data protection, the DPA shall prevail.
RafterCore maintains industry-standard technical and organizational security measures as described in the DPA and at raftercore.com/data-compliance. RafterCore will notify Customer of confirmed security incidents affecting Customer Data within 48 hours of confirmation, as detailed in the DPA.
Customer is responsible for: (a) obtaining all necessary consents and authorizations to share personal data with RafterCore; (b) ensuring Authorized Users comply with applicable data protection laws; and (c) implementing appropriate security measures for Customer's own systems and credentials.
RafterCore represents and warrants that: (a) it has the right and authority to enter into and perform this Agreement; (b) the Platform will perform materially in accordance with the Documentation during the Subscription Term; (c) RafterCore will not knowingly introduce malware or malicious code into the Platform; and (d) RafterCore will perform professional services with reasonable skill and care.
Customer represents and warrants that: (a) it has the right and authority to enter into this Agreement and to provide Customer Data to RafterCore; (b) Customer Data does not infringe any third-party intellectual property rights or violate applicable law; and (c) Customer will use the Platform in compliance with all applicable laws and this Agreement.
EXCEPT AS EXPRESSLY SET FORTH IN SECTION 8.1, THE PLATFORM AND SERVICES ARE PROVIDED "AS IS" AND "AS AVAILABLE." RAFTERCORE EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES, INCLUDING WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE, AND NON-INFRINGEMENT. RAFTERCORE DOES NOT WARRANT THAT THE PLATFORM WILL BE ERROR-FREE, UNINTERRUPTED, OR THAT ALL ERRORS WILL BE CORRECTED. AI-GENERATED FEATURES (SUPPLEMENT WRITING, ROOF ANALYSIS) ARE PROVIDED FOR INFORMATIONAL PURPOSES AND DO NOT CONSTITUTE PROFESSIONAL ENGINEERING, LEGAL, OR INSURANCE ADVICE.
RafterCore shall defend, indemnify, and hold harmless Customer and its officers, directors, employees, and agents from any third-party claim, suit, or proceeding ("Claim") alleging that the Platform, as provided and used in accordance with this Agreement, infringes any U.S. patent, copyright, trademark, or trade secret of a third party. RafterCore shall pay damages and costs awarded in such Claim, provided Customer: (a) promptly notifies RafterCore in writing; (b) gives RafterCore sole control of the defense and settlement; and (c) cooperates reasonably at RafterCore's expense.
If the Platform becomes or is likely to become the subject of an infringement Claim, RafterCore may, at its option: (i) obtain the right for Customer to continue using the Platform; (ii) replace or modify the Platform to make it non-infringing; or (iii) if neither (i) nor (ii) is commercially practicable, terminate the Subscription and refund pre-paid, unused Fees. This Section states RafterCore's entire liability for intellectual property infringement.
RafterCore's indemnification obligations do not apply to Claims arising from: (a) Customer's modification of the Platform; (b) use of the Platform in combination with third-party software or hardware not approved by RafterCore; (c) Customer's use of the Platform in violation of this Agreement; or (d) Customer Data.
Customer shall defend, indemnify, and hold harmless RafterCore and its officers, directors, employees, and agents from any Claim arising from: (a) Customer Data, including any claim that Customer Data infringes third-party rights or violates applicable law; (b) Customer's breach of this Agreement or applicable law; or (c) Customer's use of the Platform in a manner not authorized by this Agreement.
TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, EACH PARTY'S TOTAL CUMULATIVE LIABILITY TO THE OTHER ARISING OUT OF OR RELATED TO THIS AGREEMENT, WHETHER IN CONTRACT, TORT (INCLUDING NEGLIGENCE), OR OTHERWISE, SHALL NOT EXCEED THE GREATER OF: (A) THE FEES PAID OR PAYABLE BY CUSTOMER IN THE TWELVE (12) MONTHS IMMEDIATELY PRECEDING THE CLAIM; OR (B) TEN THOUSAND U.S. DOLLARS (USD $10,000).
IN NO EVENT WILL EITHER PARTY BE LIABLE FOR ANY INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, CONSEQUENTIAL, OR PUNITIVE DAMAGES, INCLUDING LOSS OF PROFITS, LOSS OF REVENUE, LOSS OF DATA, LOSS OF BUSINESS, OR COST OF SUBSTITUTE SERVICES, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
The limitations in Sections 10.1 and 10.2 do not apply to: (a) a party's indemnification obligations under Section 9; (b) either party's breach of confidentiality obligations under Section 6; (c) Customer's payment obligations; or (d) liability that cannot be limited by applicable law.
This Agreement commences on the Effective Date and continues until the expiration of the initial Subscription Term specified in the Order Form, unless earlier terminated as provided herein.
Unless either party provides written notice of non-renewal at least 30 days before the end of the then-current Subscription Term, the Agreement will automatically renew for successive periods equal to the initial Subscription Term, at RafterCore's then-current pricing (subject to Section 3.5 notice requirements).
Either party may terminate this Agreement immediately upon written notice if: (a) the other party materially breaches this Agreement and fails to cure such breach within 30 days of written notice specifying the breach in reasonable detail; or (b) the other party becomes insolvent, makes a general assignment for the benefit of creditors, or is subject to bankruptcy or insolvency proceedings that are not dismissed within 60 days.
Customer may terminate this Agreement for convenience with 30 days' written notice to RafterCore; however, no refunds will be issued for pre-paid annual Fees. RafterCore may terminate this Agreement for convenience with 90 days' written notice, in which case RafterCore will refund a pro-rated portion of pre-paid annual Fees for the unused portion of the Subscription Term.
Upon termination or expiration: (a) all licenses granted hereunder terminate immediately; (b) Customer must cease using the Platform and delete all local copies of Platform software or documentation; (c) each party must, upon written request, return or destroy the other party's Confidential Information; and (d) RafterCore's obligations with respect to Customer Data are governed by the DPA (Section 10 of the DPA).
Sections 1 (Definitions), 3 (Fees — for amounts due and unpaid), 5 (Intellectual Property), 6 (Confidentiality), 8.3 (Disclaimer), 9 (Indemnification), 10 (Limitation of Liability), 11.5 (Effect of Termination), 11.6 (Survival), and 12 (General) survive termination or expiration of this Agreement.
This Agreement is governed by and construed in accordance with the laws of the State of Arizona, USA, without regard to its conflict of law provisions. The United Nations Convention on Contracts for the International Sale of Goods does not apply.
The parties will attempt to resolve any dispute through good-faith negotiation for a period of 30 days from written notice of the dispute. If the dispute cannot be resolved through negotiation, either party may pursue legal remedies. Each party irrevocably submits to the exclusive jurisdiction of state and federal courts located in Maricopa County, Arizona.
All notices required or permitted under this Agreement must be in writing and delivered by: (a) email to the address specified in the Order Form (effective upon confirmed receipt); (b) overnight courier; or (c) certified mail, return receipt requested. Notices to RafterCore should be addressed to: legal@raftercore.com / RafterCore LLC, Phoenix, Arizona.
Neither party is liable for failure or delay in performance caused by circumstances beyond its reasonable control, including natural disasters, acts of government, pandemics, cyberattacks (provided reasonable security measures were in place), or telecommunications failures. The affected party must promptly notify the other party and use commercially reasonable efforts to resume performance. If a force majeure event continues for more than 60 days, either party may terminate this Agreement without liability.
Each party represents that it will comply with all applicable anti-corruption laws, including the U.S. Foreign Corrupt Practices Act, in connection with its performance under this Agreement.
Neither party may assign this Agreement or any rights hereunder without the other party's prior written consent, which shall not be unreasonably withheld, except that: (a) RafterCore may assign this Agreement to an Affiliate or in connection with a merger, acquisition, or sale of all or substantially all of its assets; and (b) Customer may assign this Agreement to an Affiliate, provided Customer remains liable for the Affiliate's obligations. Any purported assignment in violation of this Section is void.
This Agreement (including the Order Form, DPA, and any SOWs executed hereunder) constitutes the entire agreement between the parties with respect to its subject matter and supersedes all prior and contemporaneous proposals, negotiations, representations, and agreements. No terms of any Customer purchase order or other Customer document shall modify this Agreement.
This Agreement may be modified only by a written amendment signed by authorized representatives of both parties. No waiver of any breach shall constitute a waiver of any other breach. Failure to enforce any provision does not waive that party's right to enforce it later.
If any provision of this Agreement is found to be unenforceable, it will be modified to the minimum extent necessary to make it enforceable, and the remaining provisions will continue in full force and effect.
The parties are independent contractors. Nothing in this Agreement creates a partnership, joint venture, agency, employment, or franchise relationship between the parties.
Neither party may use the other party's name, logo, or trademarks in any press release, marketing material, or customer reference without prior written consent, except that RafterCore may include Customer's name in a general list of customers (e.g., on its website) unless Customer opts out in writing.
Each party will comply with all applicable export control laws and regulations. Customer represents that it is not located in a country subject to U.S. embargo and is not listed on any U.S. government restricted party list.
This Agreement may be executed in counterparts, each of which shall be deemed an original. Electronic signatures (including DocuSign, HelloSign, or PDF signatures) are legally binding and have the same force as original ink signatures.
By signing below (or by executing an Order Form referencing this Agreement), the parties agree to be bound by the terms of this Master Service Agreement.
Note: This MSA is for enterprise customers only and is not presented to standard self-service subscribers. Standard subscribers are governed by RafterCore's Terms of Service. To request an executed MSA, contact legal@raftercore.com.
To request an Order Form, countersigned MSA, or enterprise pricing:
Email: legal@raftercore.com
General: contact@raftercore.com
Mail: RafterCore LLC, Phoenix, Arizona, USA
Related documents: Terms of Service · Data Processing Agreement · Privacy Policy · Security & Compliance