{
  "$schema" : "http://json-schema.org/draft-04/schema#",
  "type" : "object",
  "properties" : {
    "createMandateInfo" : {
      "$ref" : "#/definitions/HostedMandateInfo"
    },
    "hostedMandateManagementSpecificInput" : {
      "$ref" : "#/definitions/HostedMandateManagementSpecificInput"
    }
  },
  "additionalProperties" : false,
  "definitions" : {
    "BankAccountIban" : {
      "type" : "object",
      "properties" : {
        "accountHolderName" : {
          "type" : "string"
        },
        "iban" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "HostedMandateInfo" : {
      "type" : "object",
      "properties" : {
        "alias" : {
          "type" : "string"
        },
        "customer" : {
          "$ref" : "#/definitions/MandateCustomer"
        },
        "customerReference" : {
          "type" : "string"
        },
        "recurrenceType" : {
          "type" : "string"
        },
        "signatureType" : {
          "type" : "string"
        },
        "uniqueMandateReference" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "HostedMandateManagementSpecificInput" : {
      "type" : "object",
      "properties" : {
        "locale" : {
          "type" : "string"
        },
        "returnUrl" : {
          "type" : "string"
        },
        "showResultPage" : {
          "type" : "boolean"
        },
        "variant" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "MandateAddress" : {
      "type" : "object",
      "properties" : {
        "city" : {
          "type" : "string"
        },
        "countryCode" : {
          "type" : "string"
        },
        "houseNumber" : {
          "type" : "string"
        },
        "street" : {
          "type" : "string"
        },
        "zip" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "MandateContactDetails" : {
      "type" : "object",
      "properties" : {
        "emailAddress" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "MandateCustomer" : {
      "type" : "object",
      "properties" : {
        "bankAccountIban" : {
          "$ref" : "#/definitions/BankAccountIban"
        },
        "companyName" : {
          "type" : "string"
        },
        "contactDetails" : {
          "$ref" : "#/definitions/MandateContactDetails"
        },
        "mandateAddress" : {
          "$ref" : "#/definitions/MandateAddress"
        },
        "personalInformation" : {
          "$ref" : "#/definitions/MandatePersonalInformation"
        }
      },
      "additionalProperties" : false
    },
    "MandatePersonalInformation" : {
      "type" : "object",
      "properties" : {
        "name" : {
          "$ref" : "#/definitions/MandatePersonalName"
        },
        "title" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    },
    "MandatePersonalName" : {
      "type" : "object",
      "properties" : {
        "firstName" : {
          "type" : "string"
        },
        "surname" : {
          "type" : "string"
        }
      },
      "additionalProperties" : false
    }
  }
}
