{
  "openapi": "3.0.1",
  "info": {
    "title": "Customer API 1.0",
    "description": "",
    "contact": {
      "name": "Payex"
    },
    "version": "1.0"
  },
  "paths": {
    "/ledger/customer/v1/{ownerNo}/customers/{customerNo}": {
      "get": {
        "tags": [
          "Customer"
        ],
        "summary": "Get a specific customer",
        "description": "Get a customer from ledger using customer number as identifier",
        "operationId": "PayEx.AR.Customer.Api.Resources.Customer.V1.Customers.CustomersController_Id_GetSingle",
        "parameters": [
          {
            "name": "ownerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerNo",
            "in": "path",
            "required": true,
            "schema": {
              "maxLength": 50,
              "minLength": 0,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V1.Customers.CustomersResource"
                },
                "examples": {
                  "OK": {
                    "description": "Get customer",
                    "value": "{\r\n  \"customerNo\": \"YYY\",\r\n  \"nationalIdentifier\": {\r\n    \"regNo\": \"YYYYMMDD-NNNN\",\r\n    \"countryCode\": \"SE\"\r\n  },\r\n  \"vatNo\": \"SE101010101001\",\r\n  \"legalEntity\": \"consumer\",\r\n  \"name\": \"Test Testsson\",\r\n  \"emailAddress\": \"Test@test.se\",\r\n  \"protectedIdentity\": false,\r\n  \"preferredLanguageCode\": \"SV\",\r\n  \"legalStatus\": \"active\",\r\n  \"msisdn\": \"\\u002B467040000000\",\r\n  \"activeConsents\": [\r\n    \"Betalingsservice\",\r\n    \"Avtalegiro\",\r\n    \"RecurringCard\"\r\n  ],\r\n  \"ediAddressInfo\": {\r\n    \"van\": \"ABCXYZ\",\r\n    \"interChangeRecipient\": \"Recipient_ID1\",\r\n    \"buyerId\": \"123465\"\r\n  },\r\n  \"surpluses\": \"/ledger/customer/v1/xxx/customers/yyy/surpluses\",\r\n  \"legalAddress\": \"/ledger/customer/v1/xxx/customers/yyy/legal-address\",\r\n  \"billingAddress\": \"/ledger/customer/v1/xxx/customers/yyy/billing-address\",\r\n  \"consent\": \"/ledger/customer/v1/xxx/customers/yyy/consent\",\r\n  \"operations\": [\r\n    {\r\n      \"rel\": \"partial-update-customer\",\r\n      \"method\": \"PATCH\",\r\n      \"href\": \"/ledger/customer/v1/xxx/customers/yyy\"\r\n    },\r\n    {\r\n      \"rel\": \"add-billing-address\",\r\n      \"method\": \"POST\",\r\n      \"href\": \"/ledger/customer/v1/xxx/customers/yyy/billing-address\"\r\n    },\r\n    {\r\n      \"rel\": \"update-kyc-answers\",\r\n      \"method\": \"POST\",\r\n      \"href\": \"/ledger/customer/v1/xxx/customers/yyy/update-kyc-answers\"\r\n    }\r\n  ],\r\n  \"taxIdentificationNumber\": \"1234567890\"\r\n}"
                  }
                }
              }
            }
          },
          "500": {
            "description": "InternalServerError",
            "content": {
              "application/json": {
                "examples": {
                  "internal-server-error": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"internal-server-error\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "handled-exception": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"handled-exception\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "unhandled-exception": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"unhandled-exception\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "BadRequest",
            "content": {
              "application/json": {
                "examples": {
                  "general-validation-error": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"general-validation-error\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "validation": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"validation\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "404": {
            "description": "NotFound",
            "content": {
              "application/json": {
                "examples": {
                  "customer-does-not-exists": {
                    "description": "The requested resource '' was not found.",
                    "value": "{\r\n  \"type\": \"customer-does-not-exists\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "customer-not-found": {
                    "description": "The requested resource '' was not found.",
                    "value": "{\r\n  \"type\": \"customer-not-found\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          }
        }
      },
      "patch": {
        "tags": [
          "Customer"
        ],
        "summary": "Update customer",
        "description": "Update customer info",
        "operationId": "PayEx.AR.Customer.Api.Resources.Customer.V1.Customers.CustomersController_Id_Patch",
        "parameters": [
          {
            "name": "ownerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerNo",
            "in": "path",
            "required": true,
            "schema": {
              "maxLength": 50,
              "minLength": 0,
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": { }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayEx.LF.Api.Common.RepositoryResources.Results.RepositoryNoContentResult"
                }
              }
            }
          },
          "500": {
            "description": "InternalServerError",
            "content": {
              "application/json": {
                "examples": {
                  "internal-server-error": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"internal-server-error\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "handled-exception": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"handled-exception\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "unhandled-exception": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"unhandled-exception\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "BadRequest",
            "content": {
              "application/json": {
                "examples": {
                  "general-validation-error": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"general-validation-error\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "validation": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"validation\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "email-address-invalid": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"email-address-invalid\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "404": {
            "description": "NotFound",
            "content": {
              "application/json": {
                "examples": {
                  "customer-does-not-exists": {
                    "description": "The requested resource '' was not found.",
                    "value": "{\r\n  \"type\": \"customer-does-not-exists\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "customer-not-found": {
                    "description": "The requested resource '' was not found.",
                    "value": "{\r\n  \"type\": \"customer-not-found\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/ledger/customer/v1/{ownerNo}/customers": {
      "post": {
        "tags": [
          "Customer"
        ],
        "summary": "Create new customer",
        "description": "Create a new customer in ledger",
        "parameters": [
          {
            "name": "ownerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V1.Customers.CreateCustomerResource"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V1.Customers.CustomersCreatedResource"
                },
                "examples": {
                  "Created": {
                    "description": "Create a customer response",
                    "value": "{\r\n  \"customerNo\": \"YYY\",\r\n  \"@id\": \"/ledger/customer/v1/xxx/customers/yyy\"\r\n}"
                  }
                }
              }
            }
          },
          "500": {
            "description": "InternalServerError",
            "content": {
              "application/json": {
                "examples": {
                  "internal-server-error": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"internal-server-error\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "handled-exception": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"handled-exception\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "unhandled-exception": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"unhandled-exception\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "BadRequest",
            "content": {
              "application/json": {
                "examples": {
                  "general-validation-error": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"general-validation-error\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "validation": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"validation\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "invalid-reg-no": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"invalid-reg-no\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "invalid-phone-no": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"invalid-phone-no\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "422": {
            "description": "UnprocessableEntity",
            "content": {
              "application/json": {
                "examples": {
                  "customer-already-exists": {
                    "description": "The requested resource '' could not be processed. Customer Already Exists",
                    "value": "{\r\n  \"type\": \"customer-already-exists\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 422,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/ledger/customer/v1/{ownerNo}/kyc-questions": {
      "get": {
        "tags": [
          "Customer"
        ],
        "summary": "Get KYC questions configured on company",
        "description": "Get KYC questions from ledger using company number as identifier",
        "parameters": [
          {
            "name": "ownerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "language",
            "in": "query",
            "description": "format ISO639-1, if not supported or none given request defaults to language code 'en'(English)",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V1.RootResource.SingleResources.KycQuestions.KycQuestionsResource"
                },
                "examples": {
                  "OK": {
                    "description": "Get CompanyInstance KYC questions if configured or a 404 company-kyc-questions-not-configured response if not",
                    "value": "{\r\n  \"kycQuestions\": [\r\n    {\r\n      \"questionText\": \"What is your current employment?\",\r\n      \"answer\": {\r\n        \"type\": \"single\",\r\n        \"required\": true,\r\n        \"possibleAnswers\": [\r\n          {\r\n            \"answerCode\": \"selfemployed\",\r\n            \"answerText\": \"Own business\"\r\n          },\r\n          {\r\n            \"answerCode\": \"private_employee\",\r\n            \"answerText\": \"Private employee\"\r\n          },\r\n          {\r\n            \"answerCode\": \"goverment_employee\",\r\n            \"answerText\": \"Government employee\"\r\n          }\r\n        ]\r\n      },\r\n      \"questionCode\": \"employment\"\r\n    },\r\n    {\r\n      \"questionText\": \"What is your yearly income\",\r\n      \"answer\": {\r\n        \"type\": \"single\",\r\n        \"required\": true,\r\n        \"possibleAnswers\": [\r\n          {\r\n            \"answerCode\": \"incomeinterval1\",\r\n            \"answerText\": \"0-100 000 SEK\"\r\n          },\r\n          {\r\n            \"answerCode\": \"incomeinterval2\",\r\n            \"answerText\": \"100 001-200 000 SEK\"\r\n          },\r\n          {\r\n            \"answerCode\": \"incomeinterval3\",\r\n            \"answerText\": \"200 001-300 000 SEK\"\r\n          },\r\n          {\r\n            \"answerCode\": \"incomeinterval4\",\r\n            \"answerText\": \"Over 300 001 SEK\"\r\n          }\r\n        ]\r\n      },\r\n      \"questionCode\": \"income\"\r\n    }\r\n  ],\r\n  \"operations\": []\r\n}"
                  }
                }
              }
            }
          },
          "500": {
            "description": "InternalServerError",
            "content": {
              "application/json": {
                "examples": {
                  "internal-server-error": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"internal-server-error\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "handled-exception": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"handled-exception\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "unhandled-exception": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"unhandled-exception\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "BadRequest",
            "content": {
              "application/json": {
                "examples": {
                  "general-validation-error": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"general-validation-error\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "404": {
            "description": "NotFound",
            "content": {
              "application/json": {
                "examples": {
                  "company-kyc-questions-not-configured": {
                    "description": "The requested resource '' was not found.",
                    "value": "{\r\n  \"type\": \"company-kyc-questions-not-configured\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/ledger/customer/v1/{ownerNo}/customers/{customerNo}/surpluses/{surplusId}/active-disbursement-orders": {
      "post": {
        "tags": [
          "Customer"
        ],
        "summary": "Add a disbursement order for surplus",
        "description": "Add a disbursement order. Disburses all available funds on surplus account, when disbursement batch is run",
        "parameters": [
          {
            "name": "ownerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "surplusId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V1.Customers.Surpluses.Operations.AddDisbursementOrderRequest"
              },
              "example": "{\r\n  \"swedishBankAccount\": {\r\n    \"accountNo\": \"NNN\",\r\n    \"accountType\": \"BGSE | PGSE | BKSE | PKSE\"\r\n  }\r\n}"
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayEx.LF.Api.Common.RepositoryResources.Results.RepositoryNoContentResult"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Customer"
        ],
        "summary": "list active surpluse disbursement orders",
        "description": "list active surpluse disbursement orders pending disbursement batch is run.",
        "parameters": [
          {
            "name": "ownerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "surplusId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V1.Customers.Surpluses.ActiveDisbursementOrders.ActiveDisbursementOrdersResourceListResult"
                },
                "examples": {
                  "OK": {
                    "description": "Get customer billing-address",
                    "value": "{\r\n  \"items\": [\r\n    {\r\n      \"operations\": [],\r\n      \"swedishBankAccount\": {\r\n        \"accountNo\": \"1234567890\",\r\n        \"accountType\": \"BGSE\"\r\n      }\r\n    }\r\n  ],\r\n  \"navigation\": {\r\n    \"@id\": \"/ledger/customer/v1/xxx/customers/yyy/surpluses/zzz/active-disbursement-orders\"\r\n  }\r\n}"
                  }
                }
              }
            }
          },
          "500": {
            "description": "InternalServerError",
            "content": {
              "application/json": {
                "examples": {
                  "internal-server-error": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"internal-server-error\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "handled-exception": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"handled-exception\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "unhandled-exception": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"unhandled-exception\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "BadRequest",
            "content": {
              "application/json": {
                "examples": {
                  "general-validation-error": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"general-validation-error\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "validation": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"validation\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "404": {
            "description": "NotFound",
            "content": {
              "application/json": {
                "examples": {
                  "customer-does-not-exists": {
                    "description": "The requested resource '' was not found.",
                    "value": "{\r\n  \"type\": \"customer-does-not-exists\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "customer-not-found": {
                    "description": "The requested resource '' was not found.",
                    "value": "{\r\n  \"type\": \"customer-not-found\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/ledger/customer/v1/{ownerNo}/customers/{customerNo}/surpluses/{surplusId}": {
      "get": {
        "tags": [
          "Customer"
        ],
        "summary": "Get single surplus",
        "description": "A surplus is the remaining value from a payment that was greater than the current debt, also referred as an 'overpayment'. Each instance of an overpayment will create a new surplus. A surplus will often have a connection to an account or invoice based of where the payment was placed but surpluses without connection to an account or invoice also exist. Surpluses can be used to settle upcoming debt or be disbursed. ",
        "operationId": "PayEx.AR.Customer.Api.Resources.Customer.V1.Customers.Surpluses.SurplusesController_Id_GetSingle",
        "parameters": [
          {
            "name": "ownerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "surplusId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V1.Customers.Surpluses.SurplusesResource"
                },
                "examples": {
                  "OK": {
                    "description": "Get single surplus",
                    "value": "{\r\n  \"surplusId\": \"YYY\",\r\n  \"balance\": 10,\r\n  \"currency\": \"SEK\",\r\n  \"date\": \"2026-06-23T00:00:00\\u002B02:00\",\r\n  \"status\": \"open\",\r\n  \"invoice\": \"/ledger/invoice/v1/XXX/invoices/AAA\",\r\n  \"account\": \"/ledger/account/v1/XXX/accounts/BBB\",\r\n  \"activeDisbursementOrders\": \"/ledger/customer/v1/xxx/customers/yyy/surpluses/yyy/active-disbursement-orders\",\r\n  \"operations\": [\r\n    {\r\n      \"rel\": \"active-disbursement-orders\",\r\n      \"method\": \"POST\",\r\n      \"href\": \"/ledger/customer/v1/xxx/customers/yyy/surpluses/yyy/active-disbursement-orders\"\r\n    }\r\n  ],\r\n  \"@id\": \"/ledger/customer/v1/XXX/customers/AAA/surpluses/YYY\"\r\n}"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/ledger/customer/v1/{ownerNo}/customers/{customerNo}/surpluses": {
      "get": {
        "tags": [
          "Customer"
        ],
        "summary": "list surpluses",
        "description": "List all available surpluses on the customer",
        "parameters": [
          {
            "name": "ownerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V1.Customers.Surpluses.SurplusesResourceListResult"
                },
                "examples": {
                  "OK": {
                    "description": "Get surpluses list",
                    "value": "{\r\n  \"items\": [\r\n    {\r\n      \"surplusId\": \"123\",\r\n      \"balance\": 10,\r\n      \"currency\": \"SEK\",\r\n      \"date\": \"2026-06-23T00:00:00\\u002B02:00\",\r\n      \"status\": \"open\",\r\n      \"invoice\": \"/ledger/invoice/v1/XXX/invoices/AAA\",\r\n      \"activeDisbursementOrders\": \"/ledger/customer/v1/xxx/customers/yyy/surpluses/123/active-disbursement-orders\",\r\n      \"operations\": [\r\n        {\r\n          \"rel\": \"active-disbursement-orders\",\r\n          \"method\": \"POST\",\r\n          \"href\": \"/ledger/customer/v1/xxx/customers/yyy/surpluses/123/active-disbursement-orders\"\r\n        }\r\n      ],\r\n      \"@id\": \"/ledger/customer/v1/xxx/customers/yyy/surpluses/123\"\r\n    },\r\n    {\r\n      \"surplusId\": \"456\",\r\n      \"balance\": 20,\r\n      \"currency\": \"SEK\",\r\n      \"date\": \"2026-06-21T00:00:00\\u002B02:00\",\r\n      \"status\": \"pending-disbursement\",\r\n      \"account\": \"/ledger/account/v1/XXX/accounts/BBB\",\r\n      \"activeDisbursementOrders\": \"/ledger/customer/v1/xxx/customers/yyy/surpluses/456/active-disbursement-orders\",\r\n      \"operations\": [\r\n        {\r\n          \"rel\": \"active-disbursement-orders\",\r\n          \"method\": \"POST\",\r\n          \"href\": \"/ledger/customer/v1/xxx/customers/yyy/surpluses/456/active-disbursement-orders\"\r\n        }\r\n      ],\r\n      \"@id\": \"/ledger/customer/v1/xxx/customers/yyy/surpluses/456\"\r\n    },\r\n    {\r\n      \"surplusId\": \"789\",\r\n      \"balance\": 30,\r\n      \"currency\": \"SEK\",\r\n      \"date\": \"2026-06-14T00:00:00\\u002B02:00\",\r\n      \"status\": \"pending-regulate\",\r\n      \"invoice\": \"/ledger/invoice/v1/XXX/invoices/AAA\",\r\n      \"activeDisbursementOrders\": \"/ledger/customer/v1/xxx/customers/yyy/surpluses/789/active-disbursement-orders\",\r\n      \"operations\": [\r\n        {\r\n          \"rel\": \"active-disbursement-orders\",\r\n          \"method\": \"POST\",\r\n          \"href\": \"/ledger/customer/v1/xxx/customers/yyy/surpluses/789/active-disbursement-orders\"\r\n        }\r\n      ],\r\n      \"@id\": \"/ledger/customer/v1/xxx/customers/yyy/surpluses/789\"\r\n    }\r\n  ],\r\n  \"navigation\": {\r\n    \"@id\": \"/ledger/customer/v1/xxx/customers/yyy/surpluses\"\r\n  }\r\n}"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/ledger/customer/v1/{ownerNo}/customers/{customerNo}/consent/trusted-seller-groups": {
      "post": {
        "tags": [
          "Customer"
        ],
        "summary": "Save a Consent document for specific CustomerNo and ConsentType.",
        "description": "Save a pdf Consent document as a Base64 string for specific CustomerNo and ConsentType.",
        "parameters": [
          {
            "name": "ownerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V1.Customers.SingleResources.Consent.TrustedSellerGroups.TrustedSellerGroupsPostRequest"
              },
              "example": "{\r\n  \"consentType\": \"PharmaciesSE\",\r\n  \"applicationDocument\": {\r\n    \"content\": \"JVBERi0xLjQKJ...\",\r\n    \"fileType\": \"pdf\"\r\n  }\r\n}"
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/V1.Customers.SingleResources.Consent.TrustedSellerGroups.TrustedSellerGroupsPostRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/V1.Customers.SingleResources.Consent.TrustedSellerGroups.TrustedSellerGroupsPostRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V1.Customers.SingleResources.Consent.TrustedSellerGroups.TrustedSellerGroupsResource"
                },
                "examples": {
                  "OK": {
                    "description": "Save a consent document",
                    "value": "{\r\n  \"consentType\": \"cccc\",\r\n  \"operations\": [\r\n    {\r\n      \"rel\": \"delete-trusted-seller-group\",\r\n      \"method\": \"DELETE\",\r\n      \"href\": \"/ledger/customer/v1/xxx/customers/yyy/consent/trusted-seller-groups/cccc\"\r\n    }\r\n  ],\r\n  \"@id\": \"/ledger/customer/v1/xxx/customers/yyy/consent/trusted-seller-groups/cccc\"\r\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "BadRequest",
            "content": {
              "application/json": {
                "examples": {
                  "validation": {
                    "description": "Occurs if the validation of the request fails, it is described in the problem why the input is invalid.",
                    "value": "{\r\n  \"type\": \"validation\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "404": {
            "description": "NotFound",
            "content": {
              "application/json": {
                "examples": {
                  "not-found": {
                    "description": "Occurs if the requested resource is not found.",
                    "value": "{\r\n  \"type\": \"not-found\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "examples": {
                  "conflict": {
                    "description": "Occurs if the requested resource already exists.",
                    "value": "{\r\n  \"type\": \"conflict\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 409,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "500": {
            "description": "InternalServerError",
            "content": {
              "application/json": {
                "examples": {
                  "fatal": {
                    "description": "Unexpected error, logs may give details about the problem",
                    "value": "{\r\n  \"type\": \"fatal\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Customer"
        ],
        "summary": "Get Customer active Consent.",
        "description": "Get details about the customer's active Consent.",
        "parameters": [
          {
            "name": "ownerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V1.Customers.SingleResources.Consent.TrustedSellerGroups.TrustedSellerGroupsResourceListResult"
                },
                "examples": {
                  "OK": {
                    "description": "Get consent list",
                    "value": "{\r\n  \"items\": [\r\n    {\r\n      \"consentType\": \"ccccc1\",\r\n      \"operations\": [\r\n        {\r\n          \"rel\": \"delete-trusted-seller-group\",\r\n          \"method\": \"DELETE\",\r\n          \"href\": \"/ledger/customer/v1/xxx/customers/yyy/consent/trusted-seller-groups/ccccc1\"\r\n        }\r\n      ],\r\n      \"@id\": \"/ledger/customer/v1/xxx/customers/yyy/consent/trusted-seller-groups/ccccc1\"\r\n    },\r\n    {\r\n      \"consentType\": \"ccccc2\",\r\n      \"operations\": [\r\n        {\r\n          \"rel\": \"delete-trusted-seller-group\",\r\n          \"method\": \"DELETE\",\r\n          \"href\": \"/ledger/customer/v1/xxx/customers/yyy/consent/trusted-seller-groups/ccccc2\"\r\n        }\r\n      ],\r\n      \"@id\": \"/ledger/customer/v1/xxx/customers/yyy/consent/trusted-seller-groups/ccccc2\"\r\n    }\r\n  ],\r\n  \"navigation\": {\r\n    \"@id\": \"/ledger/customer/v1/xxx/customers/yyy/consent/trusted-seller-groups\"\r\n  }\r\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "BadRequest",
            "content": {
              "application/json": {
                "examples": {
                  "validation": {
                    "description": "Occurs if the validation of the request fails, it is described in the problem why the input is invalid.",
                    "value": "{\r\n  \"type\": \"validation\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "404": {
            "description": "NotFound",
            "content": {
              "application/json": {
                "examples": {
                  "not-found": {
                    "description": "Occurs if the requested resource is not found.",
                    "value": "{\r\n  \"type\": \"not-found\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "examples": {
                  "conflict": {
                    "description": "Occurs if the requested resource already exists.",
                    "value": "{\r\n  \"type\": \"conflict\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 409,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "500": {
            "description": "InternalServerError",
            "content": {
              "application/json": {
                "examples": {
                  "fatal": {
                    "description": "Unexpected error, logs may give details about the problem",
                    "value": "{\r\n  \"type\": \"fatal\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/ledger/customer/v1/{ownerNo}/customers/{customerNo}/legal-address": {
      "get": {
        "tags": [
          "Customer"
        ],
        "summary": "Get the legal address of the customer",
        "description": "The legal address is where claims is normally sent to. It is required for a customer to have a legal address registered",
        "parameters": [
          {
            "name": "ownerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V1.Customers.SingleResources.AddressResource"
                },
                "examples": {
                  "OK": {
                    "description": "Get customer legal-address",
                    "value": "{\r\n  \"addressee\": \"Test Testsson\",\r\n  \"streetAddress\": \"Test street 1\",\r\n  \"zipCode\": \"60000\",\r\n  \"city\": \"Test town\",\r\n  \"coAddress\": \"Co address\",\r\n  \"countryCode\": \"SE\",\r\n  \"operations\": [\r\n    {\r\n      \"rel\": \"update-legal-address\",\r\n      \"method\": \"PUT\",\r\n      \"href\": \"/ledger/customer/v1/xxx/customers/yyy/legal-address\"\r\n    },\r\n    {\r\n      \"rel\": \"update-legal-address-from-population-register\",\r\n      \"method\": \"POST\",\r\n      \"href\": \"/ledger/customer/v1/xxx/customers/yyy/legal-address/update-legal-address-from-population-register\"\r\n    }\r\n  ]\r\n}"
                  }
                }
              }
            }
          },
          "500": {
            "description": "InternalServerError",
            "content": {
              "application/json": {
                "examples": {
                  "internal-server-error": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"internal-server-error\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "handled-exception": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"handled-exception\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "unhandled-exception": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"unhandled-exception\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "BadRequest",
            "content": {
              "application/json": {
                "examples": {
                  "general-validation-error": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"general-validation-error\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "validation": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"validation\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "404": {
            "description": "NotFound",
            "content": {
              "application/json": {
                "examples": {
                  "customer-does-not-exists": {
                    "description": "The requested resource '' was not found.",
                    "value": "{\r\n  \"type\": \"customer-does-not-exists\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "customer-not-found": {
                    "description": "The requested resource '' was not found.",
                    "value": "{\r\n  \"type\": \"customer-not-found\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Customer"
        ],
        "summary": "Update customer legal-address",
        "description": "this \"PUT\" operation will replace the existing legal-address with the address specified in the request body.",
        "parameters": [
          {
            "name": "ownerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V1.Customers.SingleResources.AddressRequest"
              },
              "example": "{\r\n  \"addressee\": \"Test Testsson\",\r\n  \"streetAddress\": \"Test street 1\",\r\n  \"zipCode\": \"60000\",\r\n  \"city\": \"Test town\",\r\n  \"coAddress\": \"Co address\",\r\n  \"countryCode\": \"SE\"\r\n}"
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayEx.LF.Api.Common.RepositoryResources.Results.RepositoryNoContentResult"
                }
              }
            }
          },
          "500": {
            "description": "InternalServerError",
            "content": {
              "application/json": {
                "examples": {
                  "internal-server-error": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"internal-server-error\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "handled-exception": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"handled-exception\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "unhandled-exception": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"unhandled-exception\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "BadRequest",
            "content": {
              "application/json": {
                "examples": {
                  "general-validation-error": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"general-validation-error\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "validation": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"validation\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "404": {
            "description": "NotFound",
            "content": {
              "application/json": {
                "examples": {
                  "customer-does-not-exists": {
                    "description": "The requested resource '' was not found.",
                    "value": "{\r\n  \"type\": \"customer-does-not-exists\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "customer-not-found": {
                    "description": "The requested resource '' was not found.",
                    "value": "{\r\n  \"type\": \"customer-not-found\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/ledger/customer/v1/{ownerNo}/customers/{customerNo}/consent/trusted-seller-groups/{consentType}": {
      "get": {
        "tags": [
          "Customer"
        ],
        "summary": "Get Customer active Consent.",
        "description": "Get details about the customer's active Consent.",
        "operationId": "PayEx.AR.Customer.Api.Resources.Customer.V1.Customers.SingleResources.Consent.TrustedSellerGroups.TrustedSellerGroupsController_Id_GetSingle",
        "parameters": [
          {
            "name": "ownerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "consentType",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V1.Customers.SingleResources.Consent.TrustedSellerGroups.TrustedSellerGroupsResource"
                },
                "examples": {
                  "OK": {
                    "description": "Get single consent",
                    "value": "{\r\n  \"consentType\": \"ccccc\",\r\n  \"operations\": [\r\n    {\r\n      \"rel\": \"delete-trusted-seller-group\",\r\n      \"method\": \"DELETE\",\r\n      \"href\": \"/ledger/customer/v1/xxx/customers/yyy/consent/trusted-seller-groups/ccccc\"\r\n    }\r\n  ]\r\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "BadRequest",
            "content": {
              "application/json": {
                "examples": {
                  "validation": {
                    "description": "Occurs if the validation of the request fails, it is described in the problem why the input is invalid.",
                    "value": "{\r\n  \"type\": \"validation\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "404": {
            "description": "NotFound",
            "content": {
              "application/json": {
                "examples": {
                  "not-found": {
                    "description": "Occurs if the requested resource is not found.",
                    "value": "{\r\n  \"type\": \"not-found\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "examples": {
                  "conflict": {
                    "description": "Occurs if the requested resource already exists.",
                    "value": "{\r\n  \"type\": \"conflict\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 409,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "500": {
            "description": "InternalServerError",
            "content": {
              "application/json": {
                "examples": {
                  "fatal": {
                    "description": "Unexpected error, logs may give details about the problem",
                    "value": "{\r\n  \"type\": \"fatal\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Customer"
        ],
        "summary": "Delete a consent from customer.",
        "description": "Delete a active consent from customer.",
        "operationId": "PayEx.AR.Customer.Api.Resources.Customer.V1.Customers.SingleResources.Consent.TrustedSellerGroups.TrustedSellerGroupsController_Id_Delete",
        "parameters": [
          {
            "name": "ownerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "consentType",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayEx.LF.Api.Common.RepositoryResources.Results.RepositoryNoContentResult"
                }
              }
            }
          },
          "400": {
            "description": "BadRequest",
            "content": {
              "application/json": {
                "examples": {
                  "validation": {
                    "description": "Occurs if the validation of the request fails, it is described in the problem why the input is invalid.",
                    "value": "{\r\n  \"type\": \"validation\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "404": {
            "description": "NotFound",
            "content": {
              "application/json": {
                "examples": {
                  "not-found": {
                    "description": "Occurs if the requested resource is not found.",
                    "value": "{\r\n  \"type\": \"not-found\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "examples": {
                  "conflict": {
                    "description": "Occurs if the requested resource already exists.",
                    "value": "{\r\n  \"type\": \"conflict\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 409,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "500": {
            "description": "InternalServerError",
            "content": {
              "application/json": {
                "examples": {
                  "fatal": {
                    "description": "Unexpected error, logs may give details about the problem",
                    "value": "{\r\n  \"type\": \"fatal\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/ledger/customer/v1/{ownerNo}/customers/{customerNo}/update-kyc-answers": {
      "post": {
        "tags": [
          "Customer"
        ],
        "summary": "Add new KYC answers",
        "description": "When exposed on customer resources operations list it's a indication previous KYC answers up for renewal. Able to update KYC with this operation even if current aren't expired but won't be suggested on the customer resource",
        "parameters": [
          {
            "name": "ownerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V1.Customers.Operations.UpdateKycAnswers.UpdateKycAnswersRequest"
              },
              "example": "{\r\n  \"answers\": [\r\n    {\r\n      \"questionCode\": \"taxable_outside_sweden\",\r\n      \"answerCode\": \"no\"\r\n    },\r\n    {\r\n      \"questionCode\": \"multiple_citizenship\",\r\n      \"answerCode\": \"yes\"\r\n    },\r\n    {\r\n      \"questionCode\": \"citizen_ship_country_codes\",\r\n      \"answerCode\": \"SWE\"\r\n    },\r\n    {\r\n      \"questionCode\": \"citizen_ship_country_codes\",\r\n      \"answerCode\": \"NOR\"\r\n    }\r\n  ]\r\n}"
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/V1.Customers.Operations.UpdateKycAnswers.UpdateKycAnswersRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/V1.Customers.Operations.UpdateKycAnswers.UpdateKycAnswersRequest"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayEx.LF.Api.Common.RepositoryResources.Results.RepositoryNoContentResult"
                }
              }
            }
          },
          "400": {
            "description": "BadRequest",
            "content": {
              "application/json": {
                "examples": {
                  "validation": {
                    "description": "Occurs if the validation of the request fails, it is described in the problem why the input is invalid.",
                    "value": "{\r\n  \"type\": \"validation\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "404": {
            "description": "NotFound",
            "content": {
              "application/json": {
                "examples": {
                  "not-found": {
                    "description": "Occurs if the customer not found or if KYC is not configured on this ledger.",
                    "value": "{\r\n  \"type\": \"not-found\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "examples": {
                  "company-kyc-questions-not-configured": {
                    "description": "Occurs if ledger is not currently configured for KYC",
                    "value": "{\r\n  \"type\": \"company-kyc-questions-not-configured\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 409,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "500": {
            "description": "InternalServerError",
            "content": {
              "application/json": {
                "examples": {
                  "fatal": {
                    "description": "Unexpected error, logs may give details about the problem",
                    "value": "{\r\n  \"type\": \"fatal\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/ledger/customer/v1/{ownerNo}/customers/{customerNo}/legal-address/update-legal-address-from-population-register": {
      "post": {
        "tags": [
          "Customer"
        ],
        "summary": "Operation for replacing customer's legal address from the population registry",
        "description": "Execution of this operation will result in an attempt to retrieve (and replace) the customer's legal address from the population registry.",
        "parameters": [
          {
            "name": "ownerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayEx.LF.Api.Common.RepositoryResources.Results.RepositoryNoContentResult"
                }
              }
            }
          },
          "500": {
            "description": "InternalServerError",
            "content": {
              "application/json": {
                "examples": {
                  "internal-server-error": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"internal-server-error\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "handled-exception": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"handled-exception\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "unhandled-exception": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"unhandled-exception\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "BadRequest",
            "content": {
              "application/json": {
                "examples": {
                  "general-validation-error": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"general-validation-error\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "validation": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"validation\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "404": {
            "description": "NotFound",
            "content": {
              "application/json": {
                "examples": {
                  "customer-does-not-exists": {
                    "description": "The requested resource '' was not found.",
                    "value": "{\r\n  \"type\": \"customer-does-not-exists\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "customer-not-found": {
                    "description": "The requested resource '' was not found.",
                    "value": "{\r\n  \"type\": \"customer-not-found\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/ledger/customer/v1/{ownerNo}/customers/{customerNo}/billing-address": {
      "get": {
        "tags": [
          "Customer"
        ],
        "summary": "Get the billing address of the customer",
        "description": "The billing address is where invoices/bills/letters etc. is normally sent to. This address is optional",
        "parameters": [
          {
            "name": "ownerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V1.Customers.SingleResources.AddressResource"
                },
                "examples": {
                  "OK": {
                    "description": "Get customer billing-address",
                    "value": "{\r\n  \"addressee\": \"Test Testsson\",\r\n  \"streetAddress\": \"Test street 1\",\r\n  \"zipCode\": \"60000\",\r\n  \"city\": \"Test town\",\r\n  \"coAddress\": \"Co address\",\r\n  \"countryCode\": \"SE\",\r\n  \"operations\": [\r\n    {\r\n      \"rel\": \"update-billing-address\",\r\n      \"method\": \"PUT\",\r\n      \"href\": \"/ledger/customer/v1/xxx/customers/yyy/billing-address\"\r\n    },\r\n    {\r\n      \"rel\": \"delete-billing-address\",\r\n      \"method\": \"DELETE\",\r\n      \"href\": \"/ledger/customer/v1/xxx/customers/yyy/billing-address\"\r\n    }\r\n  ]\r\n}"
                  }
                }
              }
            }
          },
          "500": {
            "description": "InternalServerError",
            "content": {
              "application/json": {
                "examples": {
                  "internal-server-error": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"internal-server-error\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "handled-exception": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"handled-exception\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "unhandled-exception": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"unhandled-exception\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "BadRequest",
            "content": {
              "application/json": {
                "examples": {
                  "general-validation-error": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"general-validation-error\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "validation": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"validation\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "404": {
            "description": "NotFound",
            "content": {
              "application/json": {
                "examples": {
                  "customer-does-not-exists": {
                    "description": "The requested resource '' was not found.",
                    "value": "{\r\n  \"type\": \"customer-does-not-exists\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "customer-not-found": {
                    "description": "The requested resource '' was not found.",
                    "value": "{\r\n  \"type\": \"customer-not-found\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Customer"
        ],
        "summary": "Add a billing-address",
        "description": "Add a billing address to customer. The billing address is where invoices/bills/letters etc. is normally sent to. This address is optional",
        "parameters": [
          {
            "name": "ownerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V1.Customers.SingleResources.AddressRequest"
              },
              "example": "{\r\n  \"addressee\": \"Test Testsson\",\r\n  \"streetAddress\": \"Test street 1\",\r\n  \"zipCode\": \"60000\",\r\n  \"city\": \"Test town\",\r\n  \"coAddress\": \"Co address\",\r\n  \"countryCode\": \"SE\"\r\n}"
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayEx.LF.Api.Common.RepositoryResources.Results.RepositoryNoContentResult"
                }
              }
            }
          },
          "500": {
            "description": "InternalServerError",
            "content": {
              "application/json": {
                "examples": {
                  "internal-server-error": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"internal-server-error\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "handled-exception": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"handled-exception\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "unhandled-exception": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"unhandled-exception\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "BadRequest",
            "content": {
              "application/json": {
                "examples": {
                  "general-validation-error": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"general-validation-error\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "validation": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"validation\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "404": {
            "description": "NotFound",
            "content": {
              "application/json": {
                "examples": {
                  "customer-does-not-exists": {
                    "description": "The requested resource '' was not found.",
                    "value": "{\r\n  \"type\": \"customer-does-not-exists\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "customer-not-found": {
                    "description": "The requested resource '' was not found.",
                    "value": "{\r\n  \"type\": \"customer-not-found\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Customer"
        ],
        "summary": "Update billing-address",
        "description": "Use this operation to update the address, the \"PUT\" body of the request should be according to the properties of the resource.",
        "parameters": [
          {
            "name": "ownerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V1.Customers.SingleResources.AddressRequest"
              },
              "example": "{\r\n  \"addressee\": \"Test Testsson\",\r\n  \"streetAddress\": \"Test street 1\",\r\n  \"zipCode\": \"60000\",\r\n  \"city\": \"Test town\",\r\n  \"coAddress\": \"Co address\",\r\n  \"countryCode\": \"SE\"\r\n}"
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayEx.LF.Api.Common.RepositoryResources.Results.RepositoryNoContentResult"
                }
              }
            }
          },
          "500": {
            "description": "InternalServerError",
            "content": {
              "application/json": {
                "examples": {
                  "internal-server-error": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"internal-server-error\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "handled-exception": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"handled-exception\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "unhandled-exception": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"unhandled-exception\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "BadRequest",
            "content": {
              "application/json": {
                "examples": {
                  "general-validation-error": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"general-validation-error\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "validation": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"validation\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "404": {
            "description": "NotFound",
            "content": {
              "application/json": {
                "examples": {
                  "customer-does-not-exists": {
                    "description": "The requested resource '' was not found.",
                    "value": "{\r\n  \"type\": \"customer-does-not-exists\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "customer-not-found": {
                    "description": "The requested resource '' was not found.",
                    "value": "{\r\n  \"type\": \"customer-not-found\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Customer"
        ],
        "summary": "Delete billing-address",
        "description": "Use this operation to delete the billing address.",
        "parameters": [
          {
            "name": "ownerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerNo",
            "in": "path",
            "required": true,
            "schema": {
              "maxLength": 255,
              "minLength": 0,
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayEx.LF.Api.Common.RepositoryResources.Results.RepositoryNoContentResult"
                }
              }
            }
          },
          "500": {
            "description": "InternalServerError",
            "content": {
              "application/json": {
                "examples": {
                  "internal-server-error": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"internal-server-error\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "handled-exception": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"handled-exception\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "unhandled-exception": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"unhandled-exception\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "BadRequest",
            "content": {
              "application/json": {
                "examples": {
                  "general-validation-error": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"general-validation-error\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "validation": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"validation\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "404": {
            "description": "NotFound",
            "content": {
              "application/json": {
                "examples": {
                  "customer-does-not-exists": {
                    "description": "The requested resource '' was not found.",
                    "value": "{\r\n  \"type\": \"customer-does-not-exists\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "customer-not-found": {
                    "description": "The requested resource '' was not found.",
                    "value": "{\r\n  \"type\": \"customer-not-found\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/ledger/customer/v1/{ownerNo}/customers/{customerNo}/consent": {
      "get": {
        "tags": [
          "Customer"
        ],
        "summary": "Get the underlying Consent resources.",
        "description": "Underlying resources that display information or enable registration of a customer's consent.",
        "parameters": [
          {
            "name": "ownerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V1.Customers.SingleResources.Consent.ConsentResource"
                },
                "examples": {
                  "OK": {
                    "description": "Get customer consent",
                    "value": "{\r\n  \"recurringCard\": \"/ledger/customer/v1/xxx/customers/yyy/consent/recurring-card\",\r\n  \"recurringCardRedirectRegistration\": \"/ledger/customer/v1/xxx/customers/yyy/consent/recurring-card-redirect-registration\",\r\n  \"trustedSellerGroups\": \"/ledger/customer/v1/xxx/customers/yyy/consent/trusted-seller-groups\",\r\n  \"availableTrustedSellerGroupConsents\": [],\r\n  \"operations\": [\r\n    {\r\n      \"rel\": \"add-trusted-seller-group\",\r\n      \"method\": \"POST\",\r\n      \"href\": \"/ledger/customer/v1/xxx/customers/yyy/consent/trusted-seller-groups\"\r\n    },\r\n    {\r\n      \"rel\": \"add-recurring-card-redirect-registration\",\r\n      \"method\": \"POST\",\r\n      \"href\": \"/ledger/customer/v1/xxx/customers/yyy/consent/recurring-card-redirect-registration\"\r\n    }\r\n  ]\r\n}"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/ledger/customer/v1/{ownerNo}/find-customer": {
      "post": {
        "tags": [
          "Customer"
        ],
        "summary": "Find customer by nationalIdentifier",
        "description": " It is used to find customer with nationalIdentifier.",
        "parameters": [
          {
            "name": "ownerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PayEx.AR.Customer.Api.Domain.FindCustomer.External.ApiResources.FindCustomerResource"
              },
              "example": "{\r\n  \"nationalIdentifier\": {\r\n    \"regNo\": \"YYYYMMDD-NNNN\",\r\n    \"countryCode\": \"SE\"\r\n  }\r\n}"
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayEx.AR.Customer.Api.Domain.FindCustomer.External.ApiResources.Results.FindCustomerResult"
                },
                "examples": {
                  "OK": {
                    "description": "Find customer with nationalIdentifier, regno and countrycode, returns CustomerNo = YYY",
                    "value": "{\r\n  \"customerNo\": \"YYY\"\r\n}"
                  }
                }
              }
            }
          },
          "500": {
            "description": "InternalServerError",
            "content": {
              "application/json": {
                "examples": {
                  "internal-server-error": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"internal-server-error\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "handled-exception": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"handled-exception\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "unhandled-exception": {
                    "description": "The requested resource '' could not be processed. Please contact support.",
                    "value": "{\r\n  \"type\": \"unhandled-exception\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 500,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "BadRequest",
            "content": {
              "application/json": {
                "examples": {
                  "general-validation-error": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"general-validation-error\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "validation": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"validation\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "invalid-reg-no": {
                    "description": "Validation error when accessing resource . Please refer to the problems property for additional details.",
                    "value": "{\r\n  \"type\": \"invalid-reg-no\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 400,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          },
          "404": {
            "description": "NotFound",
            "content": {
              "application/json": {
                "examples": {
                  "customer-does-not-exists": {
                    "description": "The requested resource '' was not found.",
                    "value": "{\r\n  \"type\": \"customer-does-not-exists\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  },
                  "customer-not-found": {
                    "description": "The requested resource '' was not found.",
                    "value": "{\r\n  \"type\": \"customer-not-found\",\r\n  \"title\": \"Problem title\",\r\n  \"status\": 404,\r\n  \"detail\": \"Problem details\",\r\n  \"instance\": \"/traceId/e7e47c48-4a22-426e-9746-0dc0ea21d73a\"\r\n}"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/ledger/customer/v1/{ownerNo}/customers/{customerNo}/consent/recurring-card": {
      "get": {
        "tags": [
          "Customer"
        ],
        "summary": "Get customer active Recurring Card Consent.",
        "description": "Get details about the customer's active Recurring Card Consent.",
        "parameters": [
          {
            "name": "ownerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V1.Customers.SingleResources.Consent.SingleResources.RecurringCard.RecurringCardResource"
                },
                "examples": {
                  "OK": {
                    "description": "Get customer active Recurring Card Consent.",
                    "value": "{\r\n  \"cardToken\": \"2eb28854-07ec-4e88-b672-7c61cc54b461\",\r\n  \"consentExpiryDate\": \"04-2035\",\r\n  \"instrumentDisplayName\": \"551000******1232\",\r\n  \"cardExpiryDate\": \"04/2035\",\r\n  \"cardBrand\": \"Visa\",\r\n  \"operations\": [\r\n    {\r\n      \"rel\": \"delete-recurring-card\",\r\n      \"method\": \"DELETE\",\r\n      \"href\": \"/ledger/customer/v1/xxx/customers/yyy/consent/recurring-card\"\r\n    }\r\n  ]\r\n}"
                  }
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Customer"
        ],
        "summary": "Delete customer active Recurring Card Consent.",
        "description": "Delete the customer's active Recurring Card Consent.",
        "parameters": [
          {
            "name": "ownerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PayEx.LF.Api.Common.RepositoryResources.Results.RepositoryNoContentResult"
                }
              }
            }
          }
        }
      }
    },
    "/ledger/customer/v1/{ownerNo}/customers/{customerNo}/consent/recurring-card-redirect-registration": {
      "get": {
        "tags": [
          "Customer"
        ],
        "summary": "Get Recurring Card registration.",
        "description": "Get details about the customer's ongoing Recurring Card registration.",
        "parameters": [
          {
            "name": "ownerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V1.Customers.SingleResources.Consent.SingleResources.RecurringCardRedirectRegistration.RecurringCardRedirectRegistrationResource"
                },
                "examples": {
                  "OK": {
                    "description": "Customer's ongoing Recurring Card Registration.",
                    "value": "{\r\n  \"redirectUrl\": \"https://ecom.externalintegration.payex.com/checkout/abc123\",\r\n  \"status\": \"Initialized\",\r\n  \"operations\": []\r\n}"
                  }
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Customer"
        ],
        "summary": "Start a Recurring Card registration.",
        "description": "Initializes the customer's Recurring Card registration with redirect to SwedbankPay.",
        "parameters": [
          {
            "name": "ownerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerNo",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/V1.Customers.SingleResources.Consent.SingleResources.RecurringCardRedirectRegistration.RecurringCardRedirectRegistrationRequest"
              },
              "example": "{\r\n  \"completeUrl\": \"https://www.google.com/search?q=cancelurl\",\r\n  \"cancelUrl\": \"https://www.google.com/search?q=completeurl\",\r\n  \"language\": \"en-US\"\r\n}"
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/V1.Customers.SingleResources.Consent.SingleResources.RecurringCardRedirectRegistration.RecurringCardRedirectRegistrationRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/V1.Customers.SingleResources.Consent.SingleResources.RecurringCardRedirectRegistration.RecurringCardRedirectRegistrationRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/V1.Customers.SingleResources.Consent.SingleResources.RecurringCardRedirectRegistration.RecurringCardRedirectRegistrationResource"
                },
                "examples": {
                  "OK": {
                    "description": "Customer's ongoing Recurring Card Registration.",
                    "value": "{\r\n  \"redirectUrl\": \"https://ecom.externalintegration.payex.com/checkout/abc123\",\r\n  \"status\": \"Initialized\",\r\n  \"operations\": [],\r\n  \"@id\": \"/ledger/customer/v1/xxx/customers/yyy/consent/recurring-card-redirect-registration\"\r\n}"
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "PayEx.AR.Customer.Api.Domain.FindCustomer.External.ApiResources.ComplexTypes.NationalIdentifier": {
        "required": [
          "regNo"
        ],
        "type": "object",
        "properties": {
          "regNo": {
            "minLength": 1,
            "type": "string"
          },
          "countryCode": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PayEx.AR.Customer.Api.Domain.FindCustomer.External.ApiResources.FindCustomerResource": {
        "type": "object",
        "properties": {
          "@id": {
            "type": "string",
            "nullable": true
          },
          "nationalIdentifier": {
            "$ref": "#/components/schemas/PayEx.AR.Customer.Api.Domain.FindCustomer.External.ApiResources.ComplexTypes.NationalIdentifier"
          }
        },
        "additionalProperties": false
      },
      "PayEx.AR.Customer.Api.Domain.FindCustomer.External.ApiResources.Results.FindCustomerResult": {
        "type": "object",
        "properties": {
          "@id": {
            "type": "string",
            "nullable": true
          },
          "customerNo": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PayEx.AR.Customer.Api.Entity.Answer": {
        "required": [
          "answerCode",
          "questionCode"
        ],
        "type": "object",
        "properties": {
          "questionCode": {
            "minLength": 1,
            "type": "string",
            "description": "The code definition of the question"
          },
          "answerCode": {
            "minLength": 1,
            "type": "string",
            "description": "The code definition of the answer"
          }
        },
        "additionalProperties": false
      },
      "PayEx.AR.Customer.Api.Entity.AnswerBase": {
        "required": [
          "possibleAnswers",
          "required",
          "textValidationRegEx",
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "minLength": 1,
            "type": "string",
            "description": "The type of the expected answer: single | multi | text"
          },
          "required": {
            "type": "boolean",
            "description": "If the answer is required"
          },
          "textValidationRegEx": {
            "minLength": 1,
            "type": "string",
            "description": "The regex the answer should match"
          },
          "possibleAnswers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PayEx.AR.Customer.Api.Entity.PossibleAnswer"
            },
            "description": "The definitions of possible answers"
          }
        },
        "additionalProperties": false
      },
      "PayEx.AR.Customer.Api.Entity.PossibleAnswer": {
        "required": [
          "answerCode",
          "answerText"
        ],
        "type": "object",
        "properties": {
          "answerCode": {
            "minLength": 1,
            "type": "string",
            "description": "The code definition of the answer"
          },
          "answerText": {
            "minLength": 1,
            "type": "string",
            "description": "The translated text of the answer"
          },
          "subQuestions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PayEx.AR.Customer.Api.Entity.Question"
            },
            "description": "The subquestions connected to an answer",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PayEx.AR.Customer.Api.Entity.Question": {
        "required": [
          "answer",
          "questionCode",
          "questionText"
        ],
        "type": "object",
        "properties": {
          "questionCode": {
            "minLength": 1,
            "type": "string",
            "description": "The code definition of the question"
          },
          "questionText": {
            "minLength": 1,
            "type": "string",
            "description": "The translated text of the question"
          },
          "answer": {
            "$ref": "#/components/schemas/PayEx.AR.Customer.Api.Entity.AnswerBase"
          }
        },
        "additionalProperties": false
      },
      "PayEx.LF.Api.Common.RepositoryResources.IOperation": {
        "type": "object",
        "properties": {
          "rel": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "method": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "href": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PayEx.LF.Api.Common.RepositoryResources.NavigationView": {
        "required": [
          "@id",
          "first",
          "next",
          "previous"
        ],
        "type": "object",
        "properties": {
          "@id": {
            "minLength": 1,
            "type": "string",
            "description": "The current result view.",
            "format": "uri"
          },
          "first": {
            "minLength": 1,
            "type": "string",
            "description": "Link to the first results.",
            "format": "uri"
          },
          "previous": {
            "minLength": 1,
            "type": "string",
            "description": "Link to the previous results.",
            "format": "uri"
          },
          "next": {
            "minLength": 1,
            "type": "string",
            "description": "Link to the next results.",
            "format": "uri"
          }
        },
        "additionalProperties": false
      },
      "PayEx.LF.Api.Common.RepositoryResources.Results.RepositoryNoContentResult": {
        "type": "object",
        "additionalProperties": false
      },
      "V1.Customers.CreateAddressResource": {
        "type": "object",
        "properties": {
          "addressee": {
            "type": "string",
            "nullable": true
          },
          "streetAddress": {
            "type": "string",
            "nullable": true
          },
          "zipCode": {
            "type": "string",
            "nullable": true
          },
          "city": {
            "type": "string",
            "nullable": true
          },
          "coAddress": {
            "type": "string",
            "nullable": true
          },
          "countryCode": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.CreateCustomerResource": {
        "type": "object",
        "properties": {
          "customerNo": {
            "type": "string",
            "nullable": true
          },
          "ediAddressInfo": {
            "$ref": "#/components/schemas/V1.Customers.EDIAddressInfo"
          },
          "emailAddress": {
            "type": "string",
            "nullable": true
          },
          "legalAddress": {
            "$ref": "#/components/schemas/V1.Customers.CreateAddressResource"
          },
          "billingAddress": {
            "$ref": "#/components/schemas/V1.Customers.CreateAddressResource"
          },
          "legalEntity": {
            "type": "string",
            "nullable": true
          },
          "msisdn": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "nationalIdentifier": {
            "$ref": "#/components/schemas/V1.Customers.NationalIdentifier"
          },
          "protectedIdentity": {
            "type": "boolean"
          },
          "preferredLanguageCode": {
            "type": "string",
            "nullable": true
          },
          "vatNo": {
            "type": "string",
            "nullable": true
          },
          "distributionType": {
            "type": "string",
            "nullable": true
          },
          "taxIdentificationNumber": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.CustomersCreatedResource": {
        "type": "object",
        "properties": {
          "@id": {
            "type": "string",
            "nullable": true
          },
          "customerNo": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.CustomersResource": {
        "type": "object",
        "properties": {
          "@id": {
            "type": "string",
            "nullable": true
          },
          "customerNo": {
            "type": "string",
            "nullable": true
          },
          "nationalIdentifier": {
            "$ref": "#/components/schemas/V1.Customers.NationalIdentifier"
          },
          "vatNo": {
            "type": "string",
            "nullable": true
          },
          "legalEntity": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "emailAddress": {
            "type": "string",
            "nullable": true
          },
          "protectedIdentity": {
            "type": "boolean"
          },
          "preferredLanguageCode": {
            "type": "string",
            "nullable": true
          },
          "legalStatus": {
            "type": "string",
            "nullable": true
          },
          "msisdn": {
            "type": "string",
            "nullable": true
          },
          "activeConsents": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "ediAddressInfo": {
            "$ref": "#/components/schemas/V1.Customers.EDIAddressInfo"
          },
          "surpluses": {
            "nullable": true
          },
          "legalAddress": {
            "nullable": true
          },
          "billingAddress": {
            "nullable": true
          },
          "consent": {
            "nullable": true
          },
          "distributionType": {
            "type": "string",
            "nullable": true
          },
          "operations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PayEx.LF.Api.Common.RepositoryResources.IOperation"
            },
            "nullable": true
          },
          "taxIdentificationNumber": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.EDIAddressInfo": {
        "type": "object",
        "properties": {
          "van": {
            "type": "string",
            "nullable": true
          },
          "interChangeRecipient": {
            "type": "string",
            "nullable": true
          },
          "buyerId": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.NationalIdentifier": {
        "required": [
          "countryCode",
          "regNo"
        ],
        "type": "object",
        "properties": {
          "regNo": {
            "minLength": 1,
            "type": "string"
          },
          "countryCode": {
            "minLength": 1,
            "pattern": "^[A-Z]{2}$",
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.Operations.UpdateKycAnswers.UpdateKycAnswersRequest": {
        "required": [
          "answers"
        ],
        "type": "object",
        "properties": {
          "answers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PayEx.AR.Customer.Api.Entity.Answer"
            },
            "description": "The answers to corresponding questions"
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.SingleResources.AddressRequest": {
        "type": "object",
        "properties": {
          "addressee": {
            "type": "string",
            "nullable": true
          },
          "streetAddress": {
            "type": "string",
            "nullable": true
          },
          "zipCode": {
            "type": "string",
            "nullable": true
          },
          "city": {
            "type": "string",
            "nullable": true
          },
          "coAddress": {
            "type": "string",
            "nullable": true
          },
          "countryCode": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.SingleResources.AddressResource": {
        "type": "object",
        "properties": {
          "@id": {
            "type": "string",
            "nullable": true
          },
          "addressee": {
            "type": "string",
            "nullable": true
          },
          "streetAddress": {
            "type": "string",
            "nullable": true
          },
          "zipCode": {
            "type": "string",
            "nullable": true
          },
          "city": {
            "type": "string",
            "nullable": true
          },
          "coAddress": {
            "type": "string",
            "nullable": true
          },
          "countryCode": {
            "type": "string",
            "nullable": true
          },
          "operations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PayEx.LF.Api.Common.RepositoryResources.IOperation"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.SingleResources.Consent.ConsentResource": {
        "type": "object",
        "properties": {
          "@id": {
            "type": "string",
            "nullable": true
          },
          "recurringCard": {
            "nullable": true
          },
          "recurringCardRedirectRegistration": {
            "nullable": true
          },
          "trustedSellerGroups": {
            "nullable": true
          },
          "availableTrustedSellerGroupConsents": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "operations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PayEx.LF.Api.Common.RepositoryResources.IOperation"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.SingleResources.Consent.SingleResources.RecurringCard.RecurringCardResource": {
        "type": "object",
        "properties": {
          "@id": {
            "type": "string",
            "nullable": true
          },
          "cardToken": {
            "type": "string",
            "nullable": true
          },
          "consentExpiryDate": {
            "type": "string",
            "nullable": true
          },
          "instrumentDisplayName": {
            "type": "string",
            "nullable": true
          },
          "cardExpiryDate": {
            "type": "string",
            "nullable": true
          },
          "cardBrand": {
            "type": "string",
            "nullable": true
          },
          "operations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PayEx.LF.Api.Common.RepositoryResources.IOperation"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.SingleResources.Consent.SingleResources.RecurringCardRedirectRegistration.RecurringCardRedirectRegistrationRequest": {
        "required": [
          "cancelUrl",
          "completeUrl",
          "language"
        ],
        "type": "object",
        "properties": {
          "completeUrl": {
            "minLength": 1,
            "type": "string",
            "format": "uri"
          },
          "cancelUrl": {
            "minLength": 1,
            "type": "string",
            "format": "uri"
          },
          "language": {
            "minLength": 1,
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.SingleResources.Consent.SingleResources.RecurringCardRedirectRegistration.RecurringCardRedirectRegistrationResource": {
        "type": "object",
        "properties": {
          "@id": {
            "type": "string",
            "nullable": true
          },
          "redirectUrl": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "string",
            "nullable": true
          },
          "operations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PayEx.LF.Api.Common.RepositoryResources.IOperation"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.SingleResources.Consent.TrustedSellerGroups.ApplicationDocument": {
        "required": [
          "content",
          "fileType"
        ],
        "type": "object",
        "properties": {
          "content": {
            "minLength": 1,
            "type": "string",
            "description": "A base64 encoded string representing the content of the document."
          },
          "fileType": {
            "minLength": 1,
            "pattern": "(?i)^(pdf|txt|json|xml)$",
            "type": "string",
            "description": "The file type of the document. Supported file types are: pdf, txt, json and xml. The validation is case insensitive."
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.SingleResources.Consent.TrustedSellerGroups.TrustedSellerGroupsPostRequest": {
        "required": [
          "applicationDocument",
          "consentType"
        ],
        "type": "object",
        "properties": {
          "consentType": {
            "minLength": 1,
            "type": "string",
            "description": "Name of the Consent Type"
          },
          "applicationDocument": {
            "$ref": "#/components/schemas/V1.Customers.SingleResources.Consent.TrustedSellerGroups.ApplicationDocument"
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.SingleResources.Consent.TrustedSellerGroups.TrustedSellerGroupsResource": {
        "type": "object",
        "properties": {
          "@id": {
            "type": "string",
            "nullable": true
          },
          "consentType": {
            "type": "string",
            "nullable": true
          },
          "operations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PayEx.LF.Api.Common.RepositoryResources.IOperation"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.SingleResources.Consent.TrustedSellerGroups.TrustedSellerGroupsResourceListResult": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/V1.Customers.SingleResources.Consent.TrustedSellerGroups.TrustedSellerGroupsResource"
            },
            "nullable": true
          },
          "navigation": {
            "$ref": "#/components/schemas/PayEx.LF.Api.Common.RepositoryResources.NavigationView"
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.Surpluses.ActiveDisbursementOrders.ActiveDisbursementOrdersResource": {
        "type": "object",
        "properties": {
          "@id": {
            "type": "string",
            "nullable": true
          },
          "activeDisbursementOrdersId": {
            "type": "string",
            "nullable": true
          },
          "operations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PayEx.LF.Api.Common.RepositoryResources.IOperation"
            },
            "nullable": true
          },
          "norwegianBankAccount": {
            "$ref": "#/components/schemas/V1.Customers.Surpluses.ActiveDisbursementOrders.NorwegianBankAccount"
          },
          "swedishBankAccount": {
            "$ref": "#/components/schemas/V1.Customers.Surpluses.ActiveDisbursementOrders.SwedishBankAccount"
          },
          "international": {
            "$ref": "#/components/schemas/V1.Customers.Surpluses.ActiveDisbursementOrders.International"
          },
          "swedishSus": {
            "$ref": "#/components/schemas/V1.Customers.Surpluses.ActiveDisbursementOrders.SwedishSus"
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.Surpluses.ActiveDisbursementOrders.ActiveDisbursementOrdersResourceListResult": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/V1.Customers.Surpluses.ActiveDisbursementOrders.ActiveDisbursementOrdersResource"
            },
            "nullable": true
          },
          "navigation": {
            "$ref": "#/components/schemas/PayEx.LF.Api.Common.RepositoryResources.NavigationView"
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.Surpluses.ActiveDisbursementOrders.Address": {
        "type": "object",
        "properties": {
          "addressee": {
            "type": "string",
            "nullable": true
          },
          "streetAddress": {
            "type": "string",
            "nullable": true
          },
          "city": {
            "type": "string",
            "nullable": true
          },
          "zipCode": {
            "type": "string",
            "nullable": true
          },
          "countryCode": {
            "type": "string",
            "nullable": true
          },
          "coAddress": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.Surpluses.ActiveDisbursementOrders.International": {
        "required": [
          "bic",
          "iban"
        ],
        "type": "object",
        "properties": {
          "iban": {
            "maxLength": 34,
            "minLength": 0,
            "type": "string"
          },
          "bic": {
            "maxLength": 11,
            "minLength": 0,
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.Surpluses.ActiveDisbursementOrders.NationalIdentifier": {
        "type": "object",
        "properties": {
          "regNo": {
            "type": "string",
            "nullable": true
          },
          "countryCode": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.Surpluses.ActiveDisbursementOrders.NorwegianBankAccount": {
        "required": [
          "accountNo"
        ],
        "type": "object",
        "properties": {
          "accountNo": {
            "maxLength": 11,
            "minLength": 0,
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.Surpluses.ActiveDisbursementOrders.SwedishBankAccount": {
        "required": [
          "accountNo",
          "accountType"
        ],
        "type": "object",
        "properties": {
          "accountNo": {
            "maxLength": 20,
            "minLength": 0,
            "type": "string"
          },
          "accountType": {
            "maxLength": 4,
            "minLength": 0,
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.Surpluses.ActiveDisbursementOrders.SwedishSus": {
        "type": "object",
        "properties": {
          "nationalIdentifier": {
            "$ref": "#/components/schemas/V1.Customers.Surpluses.ActiveDisbursementOrders.NationalIdentifier"
          },
          "address": {
            "$ref": "#/components/schemas/V1.Customers.Surpluses.ActiveDisbursementOrders.Address"
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.Surpluses.Operations.AddDisbursementOrderRequest": {
        "type": "object",
        "properties": {
          "@id": {
            "type": "string",
            "nullable": true
          },
          "activeDisbursementOrdersId": {
            "type": "string",
            "nullable": true
          },
          "norwegianBankAccount": {
            "$ref": "#/components/schemas/V1.Customers.Surpluses.ActiveDisbursementOrders.NorwegianBankAccount"
          },
          "swedishBankAccount": {
            "$ref": "#/components/schemas/V1.Customers.Surpluses.ActiveDisbursementOrders.SwedishBankAccount"
          },
          "international": {
            "$ref": "#/components/schemas/V1.Customers.Surpluses.ActiveDisbursementOrders.International"
          },
          "swedishSus": {
            "$ref": "#/components/schemas/V1.Customers.Surpluses.ActiveDisbursementOrders.SwedishSus"
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.Surpluses.SurplusesResource": {
        "type": "object",
        "properties": {
          "@id": {
            "type": "string",
            "nullable": true
          },
          "surplusId": {
            "type": "string",
            "nullable": true
          },
          "balance": {
            "type": "number",
            "format": "double"
          },
          "currency": {
            "type": "string",
            "nullable": true
          },
          "date": {
            "type": "string",
            "format": "date-time"
          },
          "status": {
            "type": "string",
            "nullable": true
          },
          "invoice": {
            "type": "string",
            "nullable": true
          },
          "account": {
            "type": "string",
            "nullable": true
          },
          "activeDisbursementOrders": {
            "nullable": true
          },
          "operations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PayEx.LF.Api.Common.RepositoryResources.IOperation"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "V1.Customers.Surpluses.SurplusesResourceListResult": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/V1.Customers.Surpluses.SurplusesResource"
            },
            "nullable": true
          },
          "navigation": {
            "$ref": "#/components/schemas/PayEx.LF.Api.Common.RepositoryResources.NavigationView"
          }
        },
        "additionalProperties": false
      },
      "V1.GenerateConsumerCustomerByRegNo.GenerateConsumerResource": {
        "type": "object",
        "properties": {
          "@id": {
            "type": "string",
            "nullable": true
          },
          "nationalIdentifier": {
            "$ref": "#/components/schemas/V1.Customers.NationalIdentifier"
          },
          "emailAddress": {
            "type": "string",
            "nullable": true
          },
          "emailAddressSpecified": {
            "type": "boolean"
          },
          "msisdn": {
            "type": "string",
            "nullable": true
          },
          "msisdnSpecified": {
            "type": "boolean"
          },
          "customerNo": {
            "type": "string",
            "nullable": true
          },
          "customerNoSpecified": {
            "type": "boolean"
          },
          "taxIdentificationNumber": {
            "type": "string",
            "nullable": true
          },
          "taxIdentificationNumberSpecified": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "V1.GenerateConsumerCustomerByRegNo.GenerateConsumerResult": {
        "type": "object",
        "properties": {
          "@id": {
            "type": "string",
            "nullable": true
          },
          "customerNo": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "V1.RootResource.SingleResources.KycQuestions.KycQuestionsResource": {
        "type": "object",
        "properties": {
          "@id": {
            "type": "string",
            "nullable": true
          },
          "kycQuestions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PayEx.AR.Customer.Api.Entity.Question"
            },
            "description": "kyc (know your customer). The questions and answers in the example are just examples of what it might look like. ",
            "nullable": true
          },
          "operations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PayEx.LF.Api.Common.RepositoryResources.IOperation"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      }
    }
  }
}