{"openapi":"3.1.0","info":{"title":"Loan Request Webhook API","description":"This OpenAPI file captures all data that should be added in a loan request.","termsOfService":"http://swagger.io/terms/","contact":{"email":"support@zendesk.opercredits.com"},"version":"v1.0","license":{"name":"Your License v0.1","url":"https://license.your-server.com"}},"servers":[{"url":"https://api.your-server.com","description":"Your endpoint implementation to Oper's webhooks"}],"tags":[{"name":"Webhooks","description":"Your Webhooks tag description"}],"paths":{"/your-webhook-endpoint":{"post":{"tags":["Webhooks"],"summary":"Your endpoint implementation for handling Oper Connect's webhooks","description":"This path represents the path to your API implementation of the end point that is configured in Oper Connect. It describes what Oper Connect will send to your endpoint, and what it expects in response.","requestBody":{"description":"Post information about the loan request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Event"}}},"required":true},"responses":{"201":{"description":"created"},"202":{"description":"Updated"},"400":{"description":"Generic error"},"422":{"description":"Invalid input"}}}}},"components":{"schemas":{"Event":{"type":["object","null"],"properties":{"event_type":{"type":"string","description":"this field provides more information about the type of the event that has triggered the webhook.","enum":["loan_request_sent_to_lender"]},"created":{"type":["string","null"],"format":"date","description":"contains the date on which the object was made. The date should be communicated in compliance with the ISO 8601 standard, which is defined as YYYY-MM-DD."},"livemode":{"type":"boolean","description":"if the object exists in livemode, this will have the value 'true'. If not, this will have the value 'false'"},"new_data":{"$ref":"#/components/schemas/NewData"}},"required":["id","event_type","api_version","account","created","livemode","new_data"],"additionalProperties":false},"NewData":{"type":"object","properties":{"loan_request":{"$ref":"#/components/schemas/LoanRequest"},"lender_state":{"$ref":"#/components/schemas/LenderState"}},"required":["loan_request","lender_state"],"additionalProperties":false},"LoanRequest":{"type":["object","null"],"properties":{"id":{"type":"integer","description":"Oper Loan Request ID","examples":[1,123]},"external_reference":{"type":["string","null"],"description":"Partner Loan Request ID","examples":["ABC123456","9876543210"]},"purpose":{"type":["string","null"],"enum":[null,"purchase"]},"broker":{"$ref":"#/components/schemas/Broker"},"owner":{"$ref":"#/components/schemas/Advisor"},"analyst":{"$ref":"#/components/schemas/Advisor"},"deed_date":{"type":["string","null"],"format":"date","description":"the date on which the mortgage deed has been signed at the notary.","example":"2000-12-01"},"acquisition_source":{"type":["string","null"],"description":"the channel through which someone has funneled before being added in the database as a client.","enum":[null,"email_campaign","print","event","facecbook_instagram","website","google","bing","affiliate_marketing","existing_customer"]},"clients":{"type":"array","items":{"$ref":"#/components/schemas/Client"}},"properties":{"type":"array","items":{"$ref":"#/components/schemas/Property"}},"liability_insurances":{"type":"array","items":{"$ref":"#/components/schemas/LiabilityInsurance"}},"financial_plan":{"$ref":"#/components/schemas/FinancialPlan"},"offer":{"$ref":"#/components/schemas/Offer"},"notary":{"$ref":"#/components/schemas/Notary"},"documents":{"type":"array","items":{"$ref":"#/components/schemas/DocumentDescription"}},"currency":{"type":["string","null"],"description":"The primary currency used in the loan request, computed using ISO 4217 alpha-3 codes.","enum":[null,"EUR"]}},"required":["id","external_reference","purpose","currency","broker","owner","analyst","deed_date","acquisition_source","clients","properties","liability_insurances","financial_plan","offer","notary","documents"],"additionalProperties":false},"Client":{"type":"object","properties":{"id":{"type":"integer","description":"Oper Client ID","examples":[1,123]},"role":{"type":["string","null"],"enum":[null,"borrower","collateral_provider","third_party","spouse"]},"external_reference":{"type":["string","null"],"examples":["ABC123456","9876543210"]},"first_name":{"type":["string","null"],"example":"John"},"last_name":{"type":["string","null"],"example":"Doe"},"middle_name":{"type":["string","null"],"example":"Johnny"},"maiden_name":{"type":["string","null"],"example":"Jane"},"mother_maiden_name":{"type":["string","null"],"example":"Sarah"},"nationality":{"type":["string","null"],"description":"ISO 3166 alpha-3 code","example":"BEL"},"language":{"type":["string","null"],"enum":[null,"nl-BE","fr-BE","en-UK","de-CH","it-CH"]},"civil_status":{"type":["string","null"],"enum":[null,"married_separate_goods","single","widow","married_lawful","defacto_union","defacto_divorced","cohabiting","divorced"]},"gender":{"type":["string","null"],"enum":[null,"m","f","o","n","u"]},"birth_date":{"type":["string","null"],"format":"date","description":"the date of birth of the client","example":"2000-12-01"},"birth_city":{"type":["string","null"],"example":"Brussels"},"birth_country":{"type":["string","null"],"description":"the birth country of the client, expressed as ISO 3166 alpha-3 code.","example":"Belgium"},"national_number":{"type":["string","null"],"example":1122334455},"id_card_number":{"type":["string","null"],"example":1122334455},"id_card_issuance_date":{"type":["string","null"],"format":"date","description":"the date of the issuance of the identity card, which can be found on the card itself","example":"2008-01-12"},"id_card_expiration_date":{"type":["string","null"],"format":"date","description":"the date of the expiry of the identity card, which can be found on the card itself","example":"2023-12-24"},"tax_id_number":{"type":["string","null"],"example":1122233},"international_bank_account_number":{"type":["string","null"],"description":"this is the IBAN-code","example":"GB29 NWBK 6016 1331 9268 19"},"bank_identifier_code":{"type":["string","null"],"description":"this is the BIC-code","example":"MELWAS6B"},"country_arrival_date":{"type":["string","null"],"format":"date","description":"the date on which the client arrived and registered itself in the country.","example":"2015-01-11"},"dependent_children":{"type":["number","null"],"format":"integer","example":2},"employment_status":{"type":["string","null"],"enum":[null,"civil_servant","company_owner","director","disabled","employee","health_insurance_settlement","house_man_wife","unemployed"]},"living_status":{"type":["string","null"],"enum":[null,"living_with_parents","renter","apartment_owner","cooperative_flat","room_mate","home_owner"]},"future_living_status":{"type":["string","null"],"enum":[null,"living_with_parents","renter","apartment_owner","cooperative_flat","room_mate","home_owner"]},"education":{"type":["string","null"],"enum":[null,"commercial_school","teaching","polytechnic_school","master","university_of_applied_science","high_school","secondary_school"]},"residence_permit":{"type":["string","null"],"enum":[null,"l","c","b","other"]},"has_tax_residence_in_che":{"type":"boolean","example":true},"has_tax_residence_in_usa":{"type":"boolean","example":false},"address":{"$ref":"#/components/schemas/Address"},"emails":{"type":"array","items":{"$ref":"#/components/schemas/Email"}},"phones":{"type":"array","items":{"$ref":"#/components/schemas/PhoneNumber"}},"incomes":{"type":"array","items":{"$ref":"#/components/schemas/Income"}},"liabilities":{"type":"array","items":{"$ref":"#/components/schemas/Liability"}},"assets":{"type":"array","items":{"$ref":"#/components/schemas/Asset"}}},"required":["id","role","external_reference","first_name","last_name","middle_name","maiden_name","mother_maiden_name","nationality","language","civil_status","gender","birth_date","birth_city","birth_country","national_number","id_card_number","id_card_issuance_date","id_card_expiration_date","tax_id_number","international_bank_account_number","bank_identifier_code","country_arrival_date","dependent_children","employment_status","living_status","future_living_status","education","residence_permit","has_tax_residence_in_che","has_tax_residence_in_usa","address","emails","phones","incomes","liabilities","assets"],"additionalProperties":false},"PhoneNumber":{"type":["object","null"],"properties":{"country_code":{"type":"string","description":"the code determining the client's current phone number's country provenance","example":"+32"},"phone_type":{"type":"string","description":"the type of phone that is used as contact information","example":"main","enum":["main","landline","commission","professional","legal","office","personal","mobile","data_protection"]},"phone_number":{"type":"string","description":"the phone number value, without the country code prefix","example":"499140348"}},"required":["country_code","phone_type","phone_number"],"additionalProperties":false},"Email":{"type":["object","null"],"properties":{"email_type":{"type":["string","null"],"description":"the type of email that is used as contact information","example":"main","enum":[null,"main","land_line","commission","professional","legal","office","personal","mobile","data_protection"]},"email_address":{"type":["string","null"],"format":"email","description":"the email itself","example":"john.doe@example.com"}},"required":["email_type","email_address"],"additionalProperties":false},"Address":{"type":["object","null"],"properties":{"street":{"type":["string","null"],"description":"the street of the client's current or future property","example":"Operstreet"},"house_number":{"type":["string","null"],"format":"integer","description":"the housenumber of the client's current or future property","example":"10"},"box":{"type":["string","null"],"description":"the box number of the client's current or future property, if there are multiple boxes for one housenumber","example":"b"},"city":{"type":["string","null"],"description":"the city of the client's current or future property","example":"Brussels"},"postal_code":{"type":["string","null"],"description":"the postal code of the client's current or future property. This code can include numbers and letters depending on the iso norm defined per country.","example":9486},"country":{"type":["string","null"],"description":"the country in which the client's current or future property is situated. This is based on the ISO 3166 alpha-2 codes.","example":"BE"}},"required":["street","house_number","box","city","postal_code","country"],"additionalProperties":false},"Income":{"type":"object","discriminator":{"propertyName":"income_type","mapping":{"variable_income":"#/components/schemas/OtherIncome","alimony":"#/components/schemas/OtherIncome","child_benefit":"#/components/schemas/DependentIncome","future_rent":"#/components/schemas/OtherIncome","health_insurance":"#/components/schemas/OtherIncome","meal_vouchers":"#/components/schemas/OtherIncome","other":"#/components/schemas/OtherIncome","rent":"#/components/schemas/OtherIncome","retirement":"#/components/schemas/OtherIncome","salary_employed":"#/components/schemas/SalaryIncome","self_employed":"#/components/schemas/SalaryIncome","unemployment_benefit":"#/components/schemas/OtherIncome","household_income":"#/components/schemas/HouseholdIncome","variale_income":"#/components/schemas/OtherIncome","company_car":"#/components/schemas/OtherIncome"}},"properties":{"id":{"type":"integer","description":"Oper Income ID","examples":[1,123]},"income_type":{"type":"string","description":"The type of income of the client","enum":["variable_income","alimony","child_benefit","future_rent","health_insurance","meal_vouchers","other","rent","retirement","salary_employed","self_employed","unemployment_benefit","household_income","variale_income","company_car"]},"amount":{"type":["number","null"],"format":"valuta","description":"The monthly amount of income","example":1234.56},"periodicity":{"type":["string","null"],"description":"The periodicity to which the liability is being paid or calculated","enum":[null,"yearly","semestrial","quarterly","monthly","one_shot"]}},"required":["id","income_type","amount"]},"SalaryIncome":{"allOf":[{"$ref":"#components/schemas/Income"},{"type":"object","properties":{"start_date":{"type":["string","null"],"format":"date","description":"the start date of the employment"},"job_function":{"type":["string","null"],"description":"a free text field to describe the job function"},"employment_type":{"type":["string","null"],"enum":[null,"self_employed_company","director","unemployed","civil_servant","student","unclear","self_employed_sole_proprietorship","health_insurance_settlement","retired","liberal_profession","military","worker","house_wife","employee","disabled"]},"contract_type":{"type":["string","null"],"enum":[null,"interim","indefinite","definite"]},"comment":{"type":["string","null"],"description":"a free text field allowing a comment to be made and more information to be given"},"employer":{"$ref":"#/components/schemas/Company"}},"required":["start_date","job_function","employment_type","contract_type","employer"]}],"unevaluatedProperties":false},"OtherIncome":{"allOf":[{"$ref":"#components/schemas/Income"},{"type":"object","properties":{"comment":{"type":["string","null"],"description":"a free text field allowing a comment to be made and more information to be given"}}}],"unevaluatedProperties":false},"DependentIncome":{"allOf":[{"$ref":"#components/schemas/Income"}],"unevaluatedProperties":false},"HouseholdIncome":{"allOf":[{"$ref":"#components/schemas/Liability"}],"unevaluatedProperties":false},"Liability":{"type":"object","discriminator":{"propertyName":"liability_type","mapping":{"rent":"#/components/schemas/RentalLiability","alimony":"#/components/schemas/AlimonyLiability","additional_liabilities":"#/components/schemas/OtherLiability","consumer_loan_immovable":"#/components/schemas/CreditLiability","mortgage_immovable":"#/components/schemas/CreditLiability","mortgage_movable":"#/components/schemas/CreditLiability","purchase_credit":"#/components/schemas/CreditLiability","credit_card":"#/components/schemas/CreditLiability"}},"properties":{"id":{"type":"integer","description":"Oper Liability ID","examples":[1,123]},"liability_type":{"type":["string","null"],"description":"The type of liability of the client","enum":[null,"rent","alimony","additional_liabilities","consumer_loan_immovable","mortgage_immovable","purchase_credit","credit_card","mortgage_movable"]},"amount":{"type":["number","null"],"format":"valuta","description":"The monthly amount of the liability","example":1234.56},"periodicity":{"type":["string","null"],"description":"The periodicity to which the liability is being paid or calculated","enum":[null,"yearly","semestrial","quarterly","monthly","one_shot"]}},"required":["id","liability_type","amount","periodicity"]},"RentalLiability":{"allOf":[{"$ref":"#components/schemas/Liability"},{"type":"object","properties":{"gone_after_request":{"type":"boolean","description":"is true if the liability will be gone once the loan request has been closed."},"start_date":{"type":["string","null"],"format":"date","description":"The date on which the first payment of the liability was issued.","example":"2020-12-02"}},"required":["gone_after_request","start_date"]}],"unevaluatedProperties":false},"AlimonyLiability":{"allOf":[{"$ref":"#components/schemas/Liability"},{"type":"object","properties":{"end_date":{"type":["string","null"],"format":"date","description":"The date on which the last payment of the liability should be issued.","example":"2020-12-02"},"start_date":{"type":["string","null"],"format":"date","description":"The date on which the first payment of the liability was issued.","example":"2020-12-02"},"outstanding_amount":{"type":["number","null"],"format":"valuta","description":"The full outstanding amount of the liability to this day","example":1234.56}},"required":["end_date","start_date","outstanding_amount"]}],"unevaluatedProperties":false},"CreditLiability":{"allOf":[{"$ref":"#components/schemas/Liability"},{"type":"object","properties":{"initial_amount":{"type":["number","null"],"format":"valuta","description":"The initial amount of the liability to this day","example":1234.56},"interest_rate":{"type":["number","null"],"format":"percentage","description":"The interest rate on the repayment as indicated at the start of the credit","example":0.03},"balance":{"type":["number","null"],"format":"valuta","description":"The currently outstanding amount of the liability","example":1234.56},"takeover":{"type":["string","null"],"description":"if the loan will be taken over in the current loan request credit amount or not. Repay means that the current credit liability will be repaid before the start of the current credit.","enum":[null,"yes","no","repay","unknown"]},"handling_costs":{"type":["number","null"],"format":"valuta","description":"The amount of costs relating to the administrative processing of the liability at the liability provider's side","example":1234.56},"early_repayment_fee":{"type":["number","null"],"format":"valuta","description":"The fee that needs to be paid if the credit is repaid earlier than expected in the initial contract","example":1234.56},"credit_provider":{"type":["string","null"],"description":"The company providing the liability to the borrower","example":"LendingCorp Belgium"},"regularity":{"type":["string","null"],"description":"The regularity of the liability","enum":[null,"regularized","regular","open_notification","zeroed_out"]},"contract_number":{"type":["string","null"],"description":"The number of the contract as defined on the contract itself","example":12345678},"end_date":{"type":["string","null"],"format":"date","description":"The date on which the last payment of the liability should be issued.","example":"2020-12-02"},"start_date":{"type":["string","null"],"format":"date","description":"The date on which the first payment of the liability was issued.","example":"2020-12-02"},"irregularity_start_date":{"type":["string","null"],"format":"date","description":"If the liability is being paid irregularly, this field describes when this first occured.","example":"2020-12-02"}},"required":["initial_amount","interest_rate","balance","takeover","handling_costs","early_repayment_fee","credit_provider","regularity","contract_number","end_date","start_date","irregularity_start_date"]}],"unevaluatedProperties":false},"OtherLiability":{"allOf":[{"$ref":"#components/schemas/Liability"}],"unevaluatedProperties":false},"Insurance":{"type":["object","null"],"properties":{"id":{"type":"integer","description":"Oper Insurance ID","examples":[1,123]},"insurance_provider":{"$ref":"#/components/schemas/Company"},"amount":{"type":["number","null"],"format":"valuta","description":"the amount of the insurance","example":85000},"periodicity":{"type":["string","null"],"description":"the periodicity of the insurance payment","enum":[null,"monthly","yearly","one_shot","quarterly","semestrial"]},"premium":{"type":["number","null"],"format":"valuta","description":"the premium to pay for the insurance","example":5200},"policy_number":{"type":["string","null"],"description":"the number of the contract at the insurer company for the insurance in question","example":345345345}},"required":["id","insurance_provider","amount","periodicity","premium","policy_number"]},"FireInsurance":{"allOf":[{"$ref":"#/components/schemas/Insurance"},{"type":"object","properties":{"has_apartment_complex_policy":{"type":"boolean","description":"True if the fire insurance applies to an appartment complex."}},"required":["has_apartment_complex_policy"]}],"unevaluatedProperties":false},"LiabilityInsurance":{"allOf":[{"$ref":"#/components/schemas/Insurance"},{"type":"object","properties":{"client_ids":{"type":"array","items":{"type":"integer","description":"the Oper IDs of the clients, which relates to the field id in the Client schema."}},"is_required_by_lender":{"type":"boolean","description":"True if the liability insurance needs to be taken because of an obligation coming from the lending company."},"has_to_be_financed":{"type":"boolean","description":"True if the liability insurance needs to be taken into account in the current loan request as a liability to be financed together with the new credit."},"duration":{"type":["integer","null"],"description":"Duration of the offer item. (In months)","example":240}},"required":["client_ids","duration","is_required_by_lender","has_to_be_financed"]}],"unevaluatedProperties":false},"Asset":{"type":"object","properties":{"asset_type":{"type":["string","null"],"description":"the type of asset of the client","enum":[null,"life_insurance","pension_fund","other","cash","investment_portfolio"]},"amount":{"type":["number","null"],"format":"valuta","description":"the monthly amount of the liability","example":1234.56},"usage_type":{"type":["string","null"],"description":"what the client is using the asset for","enum":[null,"keep","withdraw","pledge"]}},"required":["asset_type","amount","usage_type"],"additionalProperties":false},"Broker":{"type":["object","null"],"properties":{"name":{"type":["string","null"],"description":"The name of the broker company.","example":"BrokerTrust Brussels ltd."},"company":{"$ref":"#/components/schemas/Company"},"is_active":{"type":"boolean","description":"If the broker company is still active or not."},"parent":{"type":["string","null"],"description":"If the broker has a parent company, the name of that parent company.","example":"BrokerTrust Global ltd."},"fsma_status":{"type":["string","null"],"description":"The status of the broker company as registered in the Financial Services and Markets Authority (FSMA).","enum":[null,"suspended","active","stopped",null]},"account_manager":{"$ref":"#/components/schemas/Advisor"},"commission_fee":{"type":["number","null"],"format":"valuta","description":"The amount of commission fee that is attributed to the broker company.","example":300},"is_commission_to_be_confiscated":{"type":"boolean","description":"Must be set to true if the commission needs to be confiscated for this specific broker."},"is_client_facing":{"type":"boolean","description":"Must be set to true if the broker can be seen by the borrower in the Journey Builder tool.","example":"A borrower creates an account through the Journey Builder tool on the website of BrokerTrust Global ltd. and has the possibility to select between multiple sub-brokers (such as BrokerTrust Brussels ltd.). Brokers that are not client-facing might exist but will not appear in this specific list."}},"required":["name","company","is_active","parent","fsma_status","account_manager","commission_fee","is_commission_to_be_confiscated","is_client_facing"],"additionalProperties":false},"Advisor":{"type":["object","null"],"properties":{"first_name":{"type":["string","null"],"description":"The first name (i.e. surname) of the advisor.","example":"John"},"middle_name":{"type":["string","null"],"description":"The middle name of the advisor.","example":"Mary"},"last_name":{"type":["string","null"],"description":"The last name (i.e. family name) of the advisor.","example":"Doe"},"mother_maiden_name":{"type":["string","null"],"description":"The mother's maiden name of the advisor.","example":"Jane"},"birth_date":{"type":["string","null"],"format":"date","description":"The birth date of the advisor."},"birth_city":{"type":["string","null"],"description":"The city of birth of the advisor.","example":"Brussels"},"emails":{"type":"array","items":{"$ref":"#/components/schemas/Email"}},"language":{"type":["string","null"],"enum":[null,"nl-BE","fr-BE","en-UK","de-CH","it-CH"],"description":"The preferred language of the advisor, which is also the language in which the Oper platform appears to the advisor after log-in."},"role":{"type":["string","null"],"description":"The role of the advisor within its company.","enum":[null,"decider","account_manager","broker_manager","analyst","broker","upload","senior_decider","head_decider","operations_manager","client"]}},"required":["first_name","middle_name","last_name","mother_maiden_name","birth_date","birth_city","emails","language","role"],"additionalProperties":false},"Company":{"type":["object","null"],"properties":{"name":{"type":["string","null"],"description":"The name of the company.","example":"Cardiff"},"legal_name":{"type":["string","null"],"description":"The legal name of the company as written on the balance sheet.","example":"Cardiff ltd."},"vat_number":{"type":["string","null"],"description":"The VAT number of the company (for companies operating under the legislation that uses VAT numbers).","example":"DE123456789"},"company_registration_number":{"type":["string","null"],"description":"The company registration number of the company (for companies operating under the legislation that uses company registration numbers).","example":"HRB 12345"},"sector":{"type":["string","null"],"description":"The sector in which the company operates.","enum":[null,"financial_services","industry","it","services","hospitality","culture","art","metal_tech","retail","agriculture","tourism","transport","social_industry","real_estate","education","professional_services","construction","post","recruitment","public_sector","other"]},"international_bank_account_number":{"type":["string","null"],"description":"The bank account information of the company.","example":"GB82 WEST1234 5678"},"company_type":{"type":["string","null"],"description":"Company types are sourced from the ECB's (European Central Bank) AnaCredit dataset maintaining all company legal forms in Europe. This dataset can be found in the annexed Excel file of the Oper documentation (https://gitlab.com/oper-engineering/hyponation-api-documentation/-/blob/V0_1_5/Annexed%20documentation/List_of_legal_forms_AnaCredit.xlsx) or on the ECB's official website (https://www.ecb.europa.eu/stats/money_credit_banking/anacredit/html/index.en.html, see \"list of legal forms\"). How to use this file? Open it and click on the second tab called \"List of legal forms\". Then, filter on the country ISO-code for your own country of application. You can find all legal information and translations for the company types included in Oper. How to understand the correct datamapping? Oper uses the \"legal form\" code from column A as a reference value.","example":"For \"Country ISO code\" filter = BE and \"Legal form\" field = \"BE015\", company_type = private limited company (SPRL or BVBA or GmbH depending on the language in Oper)"},"address":{"$ref":"#/components/schemas/Address"},"phones":{"type":"array","items":{"$ref":"#/components/schemas/PhoneNumber"}},"emails":{"type":"array","items":{"$ref":"#/components/schemas/Email"}}},"required":["name","legal_name","vat_number","company_registration_number","sector","international_bank_account_number","company_type","address","phones","emails"],"additionalProperties":false},"Property":{"type":["object","null"],"properties":{"id":{"type":"integer","description":"Oper Property ID","examples":[1,123]},"purposes":{"type":"array","description":"The purpose of the property in the loan request.","items":{"type":["string"],"enum":["buy","collateral"]}},"property_type":{"type":["string","null"],"description":"The type of building that the property represents.","enum":[null,"terraced_house","investment_property","natural_reserve","warehouse","studio","villa","mixed_building","apartment_complex","agricultural_land","house","construction_land","apartment","chalet_no_domicile","other","chalet"]},"usage_types":{"type":"array","description":"What the property will be used for once inhabited.","items":{"type":["string"],"enum":["co_living_inclusion","investment_property","co_living","other","private_rent","professional_rent","second_stay","living","commercial"]}},"is_main_first_residence":{"type":"boolean","description":"If the property is a main first residence or not."},"condition_of_property":{"type":["string","null"],"description":"In which condition the property is.","enum":[null,"renovated","run_down","to_be_demolished","in_good_condition","medium_condition","like_new","new_build"]},"building_year":{"type":["number","null"],"format":"integer","description":"The building year of the property."},"land_register":{"type":["string","null"],"description":"If the property is included in the land register."},"district_court":{"type":["string","null"],"description":"Which district court the property belongs to."},"plot_number":{"type":["string","null"],"description":"Which plot number the property has."},"property_number":{"type":["string","null"],"description":"The house number of the property."},"cadastral_location":{"type":["string","null"],"description":"The cadastral location of the property."},"surface_area":{"type":["number","null"],"description":"The surface area of the property in square meters."},"number_of_rooms":{"type":["number","null"],"description":"The number of rooms in the property."},"epc_before_renovation":{"type":["integer","null"],"description":"The EPC-value of the property before renovation."},"epc_after_renovation":{"type":["integer","null"],"description":"The EPC-value of the property after renovation."},"epc_contract_number":{"type":["string","null"],"description":"The number of the contract stating the EPC values."},"epc_date":{"type":["string","null"],"format":"date","description":"The date on which the EPC has been defined."},"e_level":{"type":["number","null"],"format":"integer","description":"The E-level of the property."},"has_energetic_renovation":{"type":"boolean","description":"If any energetic renovation has taken place."},"has_small_cadastral_income":{"type":"boolean","description":"If the property has a small cadastral income."},"has_lift":{"type":"boolean","description":"If the property contains a lift."},"price":{"type":["number","null"],"format":"valuta","description":"The market price of the property."},"fair_value":{"type":["number","null"],"format":"valuta","description":"The fair value of the property."},"fair_value_after_renovation":{"type":["number","null"],"format":"valuta","description":"The fair value of the renovated property."},"forced_sale_value_after_renovation":{"type":["number","null"],"format":"valuta","description":"The forced sale fair value of the property."},"estimation_expiration_date":{"type":["string","null"],"format":"date","description":"The expiration date of the estimation."},"address":{"$ref":"#/components/schemas/Address"},"renovations":{"type":"array","items":{"$ref":"#/components/schemas/Renovation"}},"mortgage_ranks":{"type":"array","items":{"$ref":"#/components/schemas/MortgageRank"}},"fire_insurance":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/FireInsurance"}]},"ownership_scheme":{"type":"array","items":{"$ref":"#/components/schemas/Ownership"}}},"required":["id","purposes","property_type","usage_types","is_main_first_residence","condition_of_property","building_year","land_register","district_court","plot_number","property_number","cadastral_location","surface_area","number_of_rooms","epc_before_renovation","epc_after_renovation","epc_contract_number","epc_date","e_level","has_energetic_renovation","has_small_cadastral_income","has_lift","price","fair_value","fair_value_after_renovation","forced_sale_value_after_renovation","estimation_expiration_date","address","renovations","mortgage_ranks","fire_insurance","ownership_scheme"],"additionalProperties":false},"Renovation":{"type":["object","null"],"properties":{"renovation_type":{"type":["string","null"],"description":"the type of renovation that the client wishes to do or has recently done on a property. These should ideally have an impact on the property price after renovation.","enum":[null,"boiler","carpentry","carport","connection_costs","drive_way","electricity","garage","garden","glazing","heating","insulation","kitchen","landscaping","other","painting","plastering","plumbing_and_heating","porch","roof","sauna","solar_panels","structural_renovation","swimming_pool","tiling","plumbing"]},"amount":{"type":["number","null"],"format":"valuta","description":"The costs involved with the specific renovation type."}},"required":["renovation_type","amount"],"additionalProperties":false},"MortgageRank":{"type":["object","null"],"properties":{"credit_provider":{"$ref":"#/components/schemas/Company"},"rank":{"type":["integer","null"],"description":"a number describing in which rank a specific company is added and for which amount."},"amount":{"type":["number","null"],"format":"valuta","description":"The amount of money allocated to that specific rank."}},"required":["credit_provider","rank","amount"],"additionalProperties":false},"Ownership":{"type":["object","null"],"properties":{"client_id":{"type":"integer","description":"The Oper Client ID in the loan request."},"share":{"type":["percentage","null"],"description":"The percentage of ownership, or share, of a client in the specific property."},"ownership_type":{"type":["string","null"],"description":"The type of ownership depending on the legally accepted possibilities.","enum":[null,"full_ownership","ground_lease","building_right","undivided","free_hold","usufruct"]}},"required":["client_id","share","ownership_type"],"additionalProperties":false},"FinancialPlan":{"type":["object","null"],"properties":{"cost":{"$ref":"#/components/schemas/Cost"},"investment":{"$ref":"#/components/schemas/Investment"},"financing":{"$ref":"#/components/schemas/Financing"},"guarantee":{"$ref":"#/components/schemas/Guarantee"}},"required":["cost","investment","financing","guarantee"],"additionalProperties":false},"Cost":{"type":["object","null"],"properties":{"amount_incl_vat":{"type":["number","null"],"format":"valuta","example":10},"amount_excl_vat":{"type":["number","null"],"format":"valuta","example":80},"amount_vat":{"type":["number","null"],"format":"valuta","example":2},"amount_aprc_costs_incl_vat":{"type":["number","null"],"format":"valuta","description":"all costs (incl. VAT) that are included in the APRC calculation.","example":3.5},"cost_items":{"type":"array","items":{"$ref":"#/components/schemas/CostItem"}}},"required":["amount_incl_vat","amount_excl_vat","amount_vat","amount_aprc_costs_incl_vat","cost_items"],"additionalProperties":false},"CostItem":{"type":["object","null"],"properties":{"cost_type":{"type":["string","null"],"enum":[null,"cost_purchase","cost_land_purchase","cost_renovation","cost_building","cost_buyout","cost_credit_takeover","cost_insurance","cost_handling","cost_file","cost_additional_financing_need","cost_distribution_notary","cost_distribution_registration","cost_notary_fees","cost_credit_notary","cost_credit_notary_fees","cost_credit_notary_administration","cost_credit_notary_mortgage_registration_fee","cost_credit_notary_mortgage_guarantee_fee","cost_credit_notary_disbursements","cost_credit_notary_annexes","cost_credit_registration","cost_credit_notary_act","cost_purchase_notary","cost_purchase_notary_act","cost_purchase_notary_annexes","cost_purchase_notary_fees","cost_purchase_notary_administration","cost_purchase_notary_mortgage_transcript","cost_purchase_notary_mortgage_transcript","cost_purchase_notary_disbursements","cost_purchase_registration","cost_land_query_fees","cost_stamp_duty_fees","cost_administration","cost_realtor","cost_land_registry","cost_estimation","cost_bank_disbursements"]},"description":{"type":["string","null"],"description":"all necessary details to describe the cost","example":"this is a cost relating to the notary's efforts when purchasing a house"},"amount_incl_vat":{"type":["number","null"],"format":"valuta","description":"the amount of the cost type including the VAT"},"amount_excl_vat":{"type":["number","null"],"format":"valuta","description":"the amount of the cost type excluding the VAT"},"vat_rate":{"type":["number","null"],"format":"percentage","description":"the percentage amount of the vat for a specific cost type","example":21},"amount_vat":{"type":["number","null"],"format":"valuta","description":"the monetary amount of the vat for a specific cost type","example":150},"is_included_in_aprc":{"type":"boolean","description":"true if the specific cost type is included in the APRC calculation of the credit"}},"required":["cost_type","description","amount_incl_vat","amount_excl_vat","vat_rate","amount_vat","is_included_in_aprc"],"additionalProperties":false},"Investment":{"type":["object","null"],"properties":{"amount_incl_vat":{"type":["number","null"],"example":80000},"amount_excl_vat":{"type":["number","null"],"example":50000},"amount_vat":{"type":["number","null"],"example":20000},"investment_items":{"type":"array","items":{"$ref":"#/components/schemas/InvestmentItem"}}},"required":["amount_incl_vat","amount_excl_vat","amount_vat","investment_items"],"additionalProperties":false},"InvestmentItem":{"type":["object","null"],"properties":{"investment_type":{"type":["string","null"],"enum":[null,"cost_purchase","cost_renovation","cost_land_purchase","cost_building","cost_buyout","cost_credit_takeover","cost_additional_financing_need"]},"description":{"type":["string","null"],"description":"all necessary details to describe the cost","example":"this is a cost relating to the notary's efforts when purchasing a house"},"amount_incl_vat":{"type":["number","null"],"format":"valuta","description":"the amount of the cost type including the VAT"},"amount_excl_vat":{"type":["number","null"],"format":"valuta","description":"the amount of the cost type excluding the VAT"},"vat_rate":{"type":["number","null"],"format":"percentage","description":"the percentage amount of the vat for a specific cost type","example":21},"amount_vat":{"type":["number","null"],"format":"valuta","description":"the monetary amount of the vat for a specific cost type"}},"required":["investment_type","description","amount_incl_vat","amount_excl_vat","vat_rate","amount_vat"],"additionalProperties":false},"Financing":{"type":["object","null"],"properties":{"amount":{"type":["number","null"],"description":"the total amount to finance. This can consist of multiple elements, whereunder the own funds and loans.","example":800},"amount_own_funds":{"type":["number","null"],"description":"the total amount of own funds needed to finance the current loan request","example":200},"amount_loans":{"type":["number","null"],"description":"the total amount of the loans needed to finance the current loan request","example":200}},"required":["amount","amount_own_funds","amount_loans"],"additionalProperties":false},"Guarantee":{"type":["object","null"],"properties":{"total_guarantee_amount":{"type":["number","null"],"format":"valuta","description":"the total amount of the guarantees in collateral for the given loan request.","example":600},"guarantee_items":{"type":"array","items":{"$ref":"#/components/schemas/GuaranteeItem"}}},"required":["total_guarantee_amount","guarantee_items"],"additionalProperties":false},"GuaranteeItem":{"type":["object","null"],"properties":{"property_id":{"type":["string","null"],"description":"the unique identifier of the property, which allows the guarantee amount to be linked to a specific property","example":123456},"mortgage_rank":{"type":["integer","null"],"description":"the rank on which the guarantee of the property is.","example":1},"amount_guarantee":{"type":["number","null"],"format":"valuta","description":"the monetary value of the property that is set as guarantee.","example":0.6},"percentage_guarantee":{"type":["number","null"],"format":"percentage","description":"the percentage of the property that is set as guarantee.","example":0.6}},"required":["property_id","mortgage_rank","amount_guarantee","percentage_guarantee"],"additionalProperties":false},"Offer":{"type":["object","null"],"properties":{"id":{"type":"integer","description":"Oper Offer ID","examples":[1,123]},"lender":{"type":["string","null"],"description":"Lender name relating to the offer item.","enum":[null,"credimo","record_credits","creafin","elantis","krefima","key_trade","triodos","axa","dvv","ckv","onesto","allianz","vdk","hypo_start","eb_lease","demetris","vlaams_sociaal_woonkrediet"]},"offer_items":{"type":"array","items":{"$ref":"#/components/schemas/OfferItem"}}},"required":["id","lender","offer_items"],"additionalProperties":false},"OfferItem":{"type":"object","properties":{"end_payment":{"type":["number","null"],"format":"valuta","description":"Last monthly installment of the offer item.","example":890},"monthly_installments":{"type":["number","null"],"format":"valuta","description":"First monthly installment of the offer item.","example":750},"aprc":{"type":["number","null"],"format":"percentage","description":"APRC related to the offer item.","example":0.0394},"net_rate":{"type":["number","null"],"format":"percentage","description":"Interest rate related to the offer item.","example":0.036},"amount":{"type":["number","null"],"format":"valuta","description":"Amount allocated to the offer item.","example":456000},"duration":{"type":["number","null"],"format":"integer","description":"Duration of the offer item. (In months)","example":240},"variability":{"type":["string","null"],"description":"Variability of the offer item.","enum":[null,"10-10-cap+2/-5","20-5-5","20-fix","10-5-5-cap3","16-5-5","20-5","10-5-5","13-1-1-cap3","10-3-3","20-5-5-cap3","5-5-5-cap3","20-3-3","15-3-3","13-5-5","6-1-1-cap3","20-1-1-cap3","3-3-3-cap2","5-5-5","1-1-1-cap4","5-5-5-cap2","5-5-5-cap5","10-5-5-cap5","10-5-5-cap+2/-5","3-3-3-cap5","15-5-5-cap+2/-5","fix","1-1-1-cap3","1-1-1-acc","10-5-5-cap2","5-5-5-cap4","1-1-1","3-3-3","15-5-5-cap5","12-5-5-cap3","15-5-5-cap3"]},"product":{"type":["string","null"],"description":"Product name allocated to the offer item.","example":"Variable Mortgage Credit"},"loan_type":{"type":["string","null"],"description":"Loan type relating to the offer item.","enum":[null,"mensuality","bridge_loan","crescendo","balloon_credit","balloon_credit_no_payment","progressive_amortization"]}},"required":["end_payment","monthly_installments","aprc","net_rate","amount","duration","variability","product","loan_type"],"additionalProperties":false},"Notary":{"type":["object","null"],"properties":{"name":{"type":["string","null"],"example":"Operland Notary Brussels"},"is_active":{"type":"boolean","description":"Is true if the notary company is still registered as an active company","example":true},"company":{"$ref":"#/components/schemas/Company"}},"required":["name","is_active","company"],"additionalProperties":false},"DocumentDescription":{"type":["object","null"],"properties":{"id":{"type":"integer","description":"Oper Document ID","examples":[1,123]},"name":{"type":["string","null"],"description":"the name of the document that was uploaded","example":"id_card_12_01_2021_john_doe"},"document_type":{"type":["string","null"],"description":"this is the type of document as requested in Oper. All document types are documented and updated in a list that can be found on https://gitlab.com/oper-engineering/hyponation-api-documentation/-/tree/main/Annexed%20documentation?ref_type=heads."},"date_modified":{"type":["string","null"],"format":"date-time"},"signed_url":{"type":["string","null"],"format":"uri","description":"a generated pre-signed link to the document file, valid for N hours"},"sha256_hash":{"type":["string","null"],"format":"hash","description":"this is the check-sum hash that will ensure the validity of the document"},"url_expiration_time":{"type":["string","null"],"format":"date-time","description":"this field describes until when the pre-signed link can be used. If the invalidity date is prior to the current date, you will have to request a new pre-signed link."},"relations":{"type":"array","items":{"$ref":"#/components/schemas/DocumentRelation"}}},"required":["id","name","document_type","date_modified","signed_url","sha256_hash","url_expiration_time","relations"],"additionalProperties":false},"DocumentRelation":{"type":"object","properties":{"id":{"type":["integer","null"],"description":"the Oper ID of the model that is related to the uploaded document, or null if the model is loan_request","examples":[1,123,null]},"type":{"type":"string","description":"the name of the schema, as indicated in the current OpenAPI specification document, to which the specific document is related.","enum":["client","insurance","income","liability","loan_request","property","financial_asset","additional_financing_need","income"]}},"required":["id","type"],"additionalProperties":false},"LenderState":{"type":["object","null"],"properties":{"id":{"type":"string","description":"the unique identifier of each lender state","example":12345}}}}},"x-readme":{"explorer-enabled":true,"proxy-enabled":true}}