{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","description":"SaaS agreement between two enterprises (Belgium), with the switching clauses of Regulation (EU) 2023/2854 chapter IV when the service is a data processing service. Every fee, period, charge, renewal and clause is the parties' own statement: nothing is defaulted, and the Data Act answer is asked, never assumed.","additionalProperties":false,"required":["provider","customer","agreement","service","fees","term","data_protection","switching","ip_ownership","termination_text","disputes","signatures"],"properties":{"provider":{"type":"object","additionalProperties":false,"description":"The provider. A Belgian provider carries the mentions of Code of economic law art. III.25 (enterprise number, domiciliation, payment account).","required":["name","address","country"],"properties":{"name":{"type":"string","description":"Name or company name of the enterprise."},"legal_form":{"type":"string","description":"Legal form (for example SRL, SA, BV), as the enterprise writes it."},"address":{"type":"string","description":"Registered office as entered in the KBO/BCE: this is the domiciliation of Code of economic law art. III.25, al. 2."},"enterprise_number":{"type":"string","description":"Belgian enterprise number (KBO/BCE), written 0123.456.789.","pattern":"^[01][0-9]{3}\\.[0-9]{3}\\.[0-9]{3}$"},"vat_number":{"type":"string","description":"Belgian VAT number, written BE0123456789.","pattern":"^BE[01][0-9]{9}$"},"iban":{"type":"string","description":"IBAN of a payment account the enterprise holds (Code of economic law art. III.25, al. 2)."},"rpm_court":{"type":"string","description":"Seat of the enterprise court named after the words RPM / RPR (legal persons only)."},"in_liquidation":{"type":"boolean","description":"true when the legal person is in liquidation; printed only when true."},"country":{"type":"string","description":"Country of the provider's registered office.","enum":["BE","DE","FR","LU","NL","AT","DK","ES","FI","IE","IT","PL","PT","SE","CH","GB","US","other"]},"foreign_registration_number":{"type":"string","description":"Registration number of a provider that is not Belgian, as its register states it."}},"allOf":[{"if":{"properties":{"country":{"const":"BE"}},"required":["country"]},"then":{"required":["enterprise_number","iban"]}}]},"customer":{"type":"object","additionalProperties":false,"required":["name","address"],"properties":{"name":{"type":"string","description":"Name or company name of the customer."},"address":{"type":"string","description":"Address of the customer."},"enterprise_number":{"type":"string","description":"Belgian enterprise number (KBO/BCE), written 0123.456.789.","pattern":"^[01][0-9]{3}\\.[0-9]{3}\\.[0-9]{3}$"},"vat_number":{"type":"string","description":"Belgian VAT number, written BE0123456789.","pattern":"^BE[01][0-9]{9}$"},"country":{"type":"string","description":"Country of the customer.","enum":["BE","DE","FR","LU","NL","AT","DK","ES","FI","IE","IT","PL","PT","SE","CH","GB","US","other"]}}},"agreement":{"type":"object","additionalProperties":false,"required":["reference","date","effective_date"],"properties":{"reference":{"type":"string","description":"Reference of the agreement."},"date":{"type":"string","description":"Date of the agreement.","format":"date"},"effective_date":{"type":"string","description":"Date the service starts.","format":"date"}}},"service":{"type":"object","additionalProperties":false,"required":["description","plan_name","included_usage"],"properties":{"description":{"type":"string","description":"The SaaS service, as the parties word it."},"plan_name":{"type":"string","description":"Name of the plan or edition the customer subscribes to."},"included_usage":{"type":"string","description":"What the plan includes (users, volumes, modules), as the parties word it."},"overage_text":{"type":"string","description":"What happens beyond the included usage, as the parties word it."}}},"fees":{"type":"object","additionalProperties":false,"required":["amount","currency","billing_frequency","payment_term_days","late_interest"],"properties":{"amount":{"type":"number","description":"Fee per billing period.","minimum":0},"currency":{"type":"string","description":"Currency of the fee, as an ISO 4217 code written by the parties.","pattern":"^[A-Z]{3}$"},"billing_frequency":{"type":"string","description":"How often the provider invoices.","enum":["monthly","quarterly","yearly"]},"payment_term_days":{"type":"integer","description":"Payment term in calendar days.","minimum":1},"late_interest":{"type":"object","additionalProperties":false,"description":"Late-payment interest.","required":["basis"],"properties":{"basis":{"type":"string","description":"The late-payment interest regime: the statutory one (law of 2 August 2002) or a rate agreed by the parties.","enum":["statutory_rate","agreed_rate"]},"annual_rate_pct":{"type":"number","description":"Agreed annual late-payment interest rate, in percent.","minimum":0,"maximum":100}},"allOf":[{"if":{"properties":{"basis":{"const":"agreed_rate"}},"required":["basis"]},"then":{"required":["annual_rate_pct"]}}]},"price_change_clause":{"type":"string","description":"Price change clause, as the parties word it."},"price_increase_notice_days":{"type":"integer","description":"Notice, in calendar days, before a price increase.","minimum":1}}},"term":{"type":"object","additionalProperties":false,"description":"Term and renewal.","required":["initial_months","auto_renewal","termination_notice_days"],"properties":{"initial_months":{"type":"integer","description":"Initial term in months.","minimum":1},"auto_renewal":{"type":"string","description":"Whether the agreement renews tacitly.","enum":["yes","no"]},"renewal_months":{"type":"integer","description":"Length of each renewal in months.","minimum":1},"termination_notice_days":{"type":"integer","description":"Notice, in calendar days, to terminate the agreement.","minimum":1},"early_termination_penalties_text":{"type":"string","description":"Penalties or charges for early termination, as the parties word them."}},"allOf":[{"if":{"properties":{"auto_renewal":{"const":"yes"}},"required":["auto_renewal"]},"then":{"required":["renewal_months"]}}]},"sla":{"type":"object","additionalProperties":false,"description":"Service levels: a reference to the SLA or a short summary.","required":[],"properties":{"reference":{"type":"string","description":"Reference of the service level agreement (be.commercial.sla) this agreement refers to."},"availability_target_pct":{"type":"number","description":"Availability target, in percent.","minimum":0,"maximum":100},"support_targets":{"type":"array","items":{"type":"string"},"description":"Support targets, one item per line."},"credits_summary":{"type":"string","description":"Summary of the service credits, as the parties word it."}}},"data_protection":{"type":"object","additionalProperties":false,"required":["dpa_reference","data_location","sub_processors_reference","security_overview"],"properties":{"dpa_reference":{"type":"string","description":"Reference of the data processing agreement (be.gdpr.dpa) or the clauses that replace it."},"data_location":{"type":"string","description":"Where the customer data is hosted."},"sub_processors_reference":{"type":"string","description":"Where the list of sub-processors is published or attached."},"transfer_mechanism":{"type":"string","description":"Mechanism for transfers outside the European Economic Area, if any."},"security_overview":{"type":"string","description":"Overview of the security measures, as the parties word it."}}},"switching":{"type":"object","additionalProperties":false,"description":"Switching between data processing services. Everything below the answer is typed by the parties when the answer is yes.","required":["data_act_applies"],"properties":{"data_act_applies":{"type":"string","description":"Whether the service is a data processing service within Regulation (EU) 2023/2854, art. 2, point 8).","enum":["yes","no","unknown"]},"notice_period_max_days":{"type":"integer","description":"Maximum notice, in calendar days, to start the switching process (art. 25, para. 2, d)).","minimum":1},"transitional_period_days":{"type":"integer","description":"Mandatory maximum transitional period, in calendar days (art. 25, para. 2, a)).","minimum":1},"assistance_text":{"type":"string","description":"Reasonable assistance during the switching process (art. 25, para. 2, a), i))."},"continuity_text":{"type":"string","description":"Continuity of the services during the transitional period (art. 25, para. 2, a), ii))."},"known_risks_text":{"type":"string","description":"Information on known risks to continuity (art. 25, para. 2, a), iii))."},"security_text":{"type":"string","description":"Security during the switching process (art. 25, para. 2, a), iv))."},"exit_strategy_text":{"type":"string","description":"Support for the customer's exit strategy (art. 25, para. 2, b))."},"termination_deemed_text":{"type":"string","description":"When the agreement is deemed terminated and how the customer is notified (art. 25, para. 2, c))."},"customer_options_text":{"type":"string","description":"The customer's notice of its decision at the end of the notice period (art. 25, para. 3)."},"extension_right_text":{"type":"string","description":"The customer's right to extend the transitional period once (art. 25, para. 5)."},"exportable_data_categories":{"type":"array","items":{"type":"string"},"description":"Categories of data and digital assets that can be ported (art. 25, para. 2, e))."},"excluded_categories":{"type":"array","items":{"type":"string"},"description":"Categories excluded from porting (art. 25, para. 2, f))."},"retrieval_period_days":{"type":"integer","description":"Retrieval period for the data, in calendar days (art. 25, para. 2, g)).","minimum":1},"erasure_clause_text":{"type":"string","description":"Erasure after the retrieval period (art. 25, para. 2, h))."},"switching_charges_text":{"type":"string","description":"Switching charges (art. 25, para. 2, i) and art. 29)."},"procedures_information_reference":{"type":"string","description":"Where the information on switching and porting procedures is available (art. 26, a))."},"online_register_reference":{"type":"string","description":"Reference to the up-to-date online register of data structures and formats (art. 26, b))."},"art28_websites":{"type":"array","items":{"type":"string"},"description":"Websites that publish the jurisdictions of the ICT infrastructure and the measures against international access (art. 28).","minItems":1},"functional_equivalence_text":{"type":"string","description":"Functional equivalence of the destination service, as the parties word it."},"multi_provider_text":{"type":"string","description":"Use of several providers at the same time, as the parties word it."}},"allOf":[{"if":{"properties":{"data_act_applies":{"const":"yes"}},"required":["data_act_applies"]},"then":{"required":["notice_period_max_days","transitional_period_days","assistance_text","continuity_text","known_risks_text","security_text","exit_strategy_text","termination_deemed_text","customer_options_text","extension_right_text","exportable_data_categories","retrieval_period_days","erasure_clause_text","switching_charges_text","procedures_information_reference","online_register_reference","art28_websites"]}}]},"ip_ownership":{"type":"string","description":"Intellectual property and ownership of the customer data, as the parties word it."},"confidentiality_text":{"type":"string","description":"Confidentiality clause, as the parties word it."},"customer_obligations":{"type":"array","items":{"type":"string"},"description":"The customer's obligations, one item per line."},"suspension_text":{"type":"string","description":"Suspension of the service, as the parties word it."},"liability_text":{"type":"string","description":"Liability clause, as the parties word it (the template prints none of its own)."},"termination_text":{"type":"string","description":"Termination clause, as the parties word it."},"disputes":{"type":"object","additionalProperties":false,"description":"Governing law and courts.","required":["courts"],"properties":{"governing_law":{"type":"string","description":"Governing law chosen by the parties; printed only when chosen.","enum":["belgian"]},"other_text":{"type":"string","description":"Another governing law or a precision, as the parties word it; printed only when given."},"courts":{"type":"string","description":"The courts the parties designate."}}},"additional_clauses":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["title","text"],"properties":{"title":{"type":"string","description":"Title of the clause."},"text":{"type":"string","description":"Text of the clause, as the parties word it."}}},"description":"Further clauses written by the parties, printed as given as numbered articles."},"signatures":{"type":"object","additionalProperties":false,"description":"Signatures and number of originals.","required":["provider","customer"],"properties":{"provider":{"type":"object","additionalProperties":false,"description":"Signature of the provider.","required":["name","title","date"],"properties":{"name":{"type":"string","description":"Name of the person who signs for the provider."},"title":{"type":"string","description":"Capacity of that person."},"date":{"type":"string","description":"Date of signature.","format":"date"},"place":{"type":"string","description":"Place of signature."}}},"customer":{"type":"object","additionalProperties":false,"description":"Signature of the customer.","required":["name","title","date"],"properties":{"name":{"type":"string","description":"Name of the person who signs for the customer."},"title":{"type":"string","description":"Capacity of that person."},"date":{"type":"string","description":"Date of signature.","format":"date"},"place":{"type":"string","description":"Place of signature."}}},"copies":{"type":"integer","description":"Number of originals signed (Civil Code book 8, art. 8.20: each original states the number).","minimum":1}}}}}