Data Import REST API Changelog
This page shows recent changes to Data Import REST API.
Deprecated fields
These fields are currently deprecated. Update integrations before they are removed.
22 fields
TotalenergiesesAccount.is_managed
Use instead:
account_type
Removed by
October 2026
TrancheTargetFee.contract_identifier
No replacement specified
Removed by
October 2026
BusinessWithExistingContracts.business_contract_identifier
Use instead:
business_contracts
Removed by
October 2026
View all deprecated fields
LegacyPaymentInstruction.instruction_reference
Use instead:
reference
Removed by
October 2026
AccountCampaign.campaign_name
Use instead:
slug
Date not announced
AccountNote.account_number
Use instead:
external_account_number
Date not announced
BusinessUser.details
Use instead:
user_details
Date not announced
BusinessWithExistingContracts.business_contract_identifiers
Use instead:
business_contracts
Date not announced
EspAddress.name
No replacement specified
Date not announced
EspAddress.organization
No replacement specified
Date not announced
Payment.display_note
No replacement specified
Date not announced
PropertyAdministrator.address1
No replacement specified
Date not announced
PropertyAdministrator.address2
No replacement specified
Date not announced
PropertyAdministrator.address3
No replacement specified
Date not announced
PropertyAdministrator.address4
No replacement specified
Date not announced
PropertyAdministrator.address5
No replacement specified
Date not announced
PropertyAdministrator.postcode
No replacement specified
Date not announced
Repayment.display_note
No replacement specified
Date not announced
TotalenergiesesAccount.company_number
Use instead:
business.company_number
Date not announced
TotalenergiesesAccountUser.customer_preferences
Use instead:
consents
Date not announced
TotalenergiesesAccountUser.details
Use instead:
user_details
Date not announced
Transactions.account_number
Use instead:
external_account_number
Date not announced
28 September 2026 - Latest
New
{
"items": {
"$ref": "#/components/schemas/TotalenergiesesAccountUser"
}
}Old
{
"items": {
"$ref": "#/components/schemas/EspAccountUser"
}
}25 September 2026
No attributes to display
24 September 2026
New
{
"x-enum-descriptions": {
"cliente_prioritario": "CLIENTE PRIORITARIO"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"CLIENTE PRIORITARIO": "CLIENTE PRIORITARIO"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"indemnizacion_sap_fi_facilita": "INDEMNIZACION SAP FI FACILITA"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"INDEMNIZACION SAP FI FACILITA": "INDEMNIZACION SAP FI FACILITA"
}
}Old
{
"x-enum-descriptions": {}
}22 September 2026
New
{
"x-validators": [
{
"name": "Validate that each child has a unique combination of values for the <code>\u2068market_name, fee_type\u2069</code> fields",
"description": "Validate that each child has a unique combination of values for the <code>\u2068market_name, fee_type\u2069</code> fields.",
"possible_errors": [
"children_with_duplicate_values"
]
}
]
}Removal date
2026-10-15
21 September 2026
New
{
"TRANCHE_TARGET_RESIDUAL_FEE": "#/components/schemas/TrancheTargetFee"
}Old
{
"TRANCHE_TARGET_RESIDUAL_FEE": "#/components/schemas/TrancheTargetResidualFee"
}New
[
{
"$ref": "#/components/schemas/BespokeRateConfiguration"
},
{
"$ref": "#/components/schemas/BillDueDate"
},
{
"$ref": "#/components/schemas/BillingDocumentIssuanceFrequencyTerm"
},
{
"$ref": "#/components/schemas/CharacteristicOverrideConfiguration"
},
{
"$ref": "#/components/schemas/CollateralRequired"
},
{
"$ref": "#/components/schemas/ContractMetaData"
},
{
"$ref": "#/components/schemas/ContractedVolumeConfiguration"
},
{
"$ref": "#/components/schemas/CorrectivePeriod"
},
{
"$ref": "#/components/schemas/DelayerDays"
},
{
"$ref": "#/components/schemas/GuaranteeOfOriginConfiguration"
},
{
"$ref": "#/components/schemas/LatePaymentFees"
},
{
"$ref": "#/components/schemas/MinimumContractLength"
},
{
"$ref": "#/components/schemas/PartnerCommission"
},
{
"$ref": "#/components/schemas/PaysByDirectDebitTerm"
},
{
"$ref": "#/components/schemas/ProductRateOverrideConfiguration"
},
{
"$ref": "#/components/schemas/PromotionAssignmentTerm"
},
{
"$ref": "#/components/schemas/RateGroupEligibilityConfiguration"
},
{
"$ref": "#/components/schemas/TaxAdjustmentConfiguration"
},
{
"$ref": "#/components/schemas/TerminationFee"
},
{
"$ref": "#/components/schemas/TrancheTargetConfiguration"
},
{
"$ref": "#/components/schemas/TrancheTargetFee"
}
]Old
[
{
"$ref": "#/components/schemas/BespokeRateConfiguration"
},
{
"$ref": "#/components/schemas/BillDueDate"
},
{
"$ref": "#/components/schemas/BillingDocumentIssuanceFrequencyTerm"
},
{
"$ref": "#/components/schemas/CharacteristicOverrideConfiguration"
},
{
"$ref": "#/components/schemas/CollateralRequired"
},
{
"$ref": "#/components/schemas/ContractMetaData"
},
{
"$ref": "#/components/schemas/ContractedVolumeConfiguration"
},
{
"$ref": "#/components/schemas/CorrectivePeriod"
},
{
"$ref": "#/components/schemas/DelayerDays"
},
{
"$ref": "#/components/schemas/GuaranteeOfOriginConfiguration"
},
{
"$ref": "#/components/schemas/LatePaymentFees"
},
{
"$ref": "#/components/schemas/MinimumContractLength"
},
{
"$ref": "#/components/schemas/PartnerCommission"
},
{
"$ref": "#/components/schemas/PaysByDirectDebitTerm"
},
{
"$ref": "#/components/schemas/ProductRateOverrideConfiguration"
},
{
"$ref": "#/components/schemas/PromotionAssignmentTerm"
},
{
"$ref": "#/components/schemas/RateGroupEligibilityConfiguration"
},
{
"$ref": "#/components/schemas/TrancheTargetResidualFee"
},
{
"$ref": "#/components/schemas/TaxAdjustmentConfiguration"
},
{
"$ref": "#/components/schemas/TerminationFee"
},
{
"$ref": "#/components/schemas/TrancheTargetConfiguration"
}
]18 September 2026
New
{
"x-enum-descriptions": {}
}Old
{
"x-enum-descriptions": {
"camp_recobro_deuda_wa_junio": "Camp Recobro Deuda WA junio"
}
}New
{
"x-enum-descriptions": {}
}Old
{
"x-enum-descriptions": {
"Camp Recobro Deuda WA junio": "Camp Recobro Deuda WA junio"
}
}17 September 2026
New
{
"x-enum-descriptions": {
"EXCESS_FEE": "EXCESS_FEE",
"SHORTFALL_FEE": "SHORTFALL_FEE"
}
}Old
{
"x-enum-descriptions": {}
}
No attributes to display
New
{
"maxLength": 6
}Old
{
"maxLength": 512
}16 September 2026
New
{
"x-enum-descriptions": {
"6M_01.09.2026_1": "6M_01.09.2026_1",
"6M_01.09.2026_2": "6M_01.09.2026_2",
"6M_01.09.2026_3": "6M_01.09.2026_3",
"6M_01.09.2026_4": "6M_01.09.2026_4",
"6M_01.09.2026_5": "6M_01.09.2026_5",
"6M_02.09.2026_1": "6M_02.09.2026_1",
"6M_02.09.2026_2": "6M_02.09.2026_2",
"6M_02.09.2026_3": "6M_02.09.2026_3",
"6M_02.09.2026_4": "6M_02.09.2026_4",
"6M_02.09.2026_5": "6M_02.09.2026_5",
"6M_03.09.2026_1": "6M_03.09.2026_1",
"6M_03.09.2026_2": "6M_03.09.2026_2",
"6M_03.09.2026_3": "6M_03.09.2026_3",
"6M_03.09.2026_4": "6M_03.09.2026_4",
"6M_03.09.2026_5": "6M_03.09.2026_5",
"6M_04.09.2026_1": "6M_04.09.2026_1",
"6M_04.09.2026_2": "6M_04.09.2026_2",
"6M_04.09.2026_3": "6M_04.09.2026_3",
"6M_04.09.2026_4": "6M_04.09.2026_4",
"6M_04.09.2026_5": "6M_04.09.2026_5",
"6M_05.09.2026_1": "6M_05.09.2026_1",
"6M_05.09.2026_2": "6M_05.09.2026_2",
"6M_05.09.2026_3": "6M_05.09.2026_3",
"6M_05.09.2026_4": "6M_05.09.2026_4",
"6M_05.09.2026_5": "6M_05.09.2026_5",
"6M_06.09.2026_1": "6M_06.09.2026_1",
"6M_06.09.2026_2": "6M_06.09.2026_2",
"6M_06.09.2026_3": "6M_06.09.2026_3",
"6M_06.09.2026_4": "6M_06.09.2026_4",
"6M_06.09.2026_5": "6M_06.09.2026_5",
"6M_07.09.2026_1": "6M_07.09.2026_1",
"6M_07.09.2026_2": "6M_07.09.2026_2",
"6M_07.09.2026_3": "6M_07.09.2026_3",
"6M_07.09.2026_4": "6M_07.09.2026_4",
"6M_07.09.2026_5": "6M_07.09.2026_5",
"6M_08.09.2026_1": "6M_08.09.2026_1",
"6M_08.09.2026_2": "6M_08.09.2026_2",
"6M_08.09.2026_3": "6M_08.09.2026_3",
"6M_08.09.2026_4": "6M_08.09.2026_4",
"6M_08.09.2026_5": "6M_08.09.2026_5",
"6M_09.09.2026_1": "6M_09.09.2026_1",
"6M_09.09.2026_2": "6M_09.09.2026_2",
"6M_09.09.2026_3": "6M_09.09.2026_3",
"6M_09.09.2026_4": "6M_09.09.2026_4",
"6M_09.09.2026_5": "6M_09.09.2026_5",
"6M_10.09.2026_1": "6M_10.09.2026_1",
"6M_10.09.2026_2": "6M_10.09.2026_2",
"6M_10.09.2026_3": "6M_10.09.2026_3",
"6M_10.09.2026_4": "6M_10.09.2026_4",
"6M_10.09.2026_5": "6M_10.09.2026_5",
"6M_11.09.2026_1": "6M_11.09.2026_1",
"6M_11.09.2026_2": "6M_11.09.2026_2",
"6M_11.09.2026_3": "6M_11.09.2026_3",
"6M_11.09.2026_4": "6M_11.09.2026_4",
"6M_11.09.2026_5": "6M_11.09.2026_5",
"6M_12.09.2026_1": "6M_12.09.2026_1",
"6M_12.09.2026_2": "6M_12.09.2026_2",
"6M_12.09.2026_3": "6M_12.09.2026_3",
"6M_12.09.2026_4": "6M_12.09.2026_4",
"6M_12.09.2026_5": "6M_12.09.2026_5",
"6M_13.09.2026_1": "6M_13.09.2026_1",
"6M_13.09.2026_2": "6M_13.09.2026_2",
"6M_13.09.2026_3": "6M_13.09.2026_3",
"6M_13.09.2026_4": "6M_13.09.2026_4",
"6M_13.09.2026_5": "6M_13.09.2026_5",
"6M_14.09.2026_1": "6M_14.09.2026_1",
"6M_14.09.2026_2": "6M_14.09.2026_2",
"6M_14.09.2026_3": "6M_14.09.2026_3",
"6M_14.09.2026_4": "6M_14.09.2026_4",
"6M_14.09.2026_5": "6M_14.09.2026_5",
"6M_15.09.2026_1": "6M_15.09.2026_1",
"6M_15.09.2026_2": "6M_15.09.2026_2",
"6M_15.09.2026_3": "6M_15.09.2026_3",
"6M_15.09.2026_4": "6M_15.09.2026_4",
"6M_15.09.2026_5": "6M_15.09.2026_5",
"6M_16.09.2026_1": "6M_16.09.2026_1",
"6M_16.09.2026_2": "6M_16.09.2026_2",
"6M_16.09.2026_3": "6M_16.09.2026_3",
"6M_16.09.2026_4": "6M_16.09.2026_4",
"6M_16.09.2026_5": "6M_16.09.2026_5",
"6M_17.09.2026_1": "6M_17.09.2026_1",
"6M_17.09.2026_2": "6M_17.09.2026_2",
"6M_17.09.2026_3": "6M_17.09.2026_3",
"6M_17.09.2026_4": "6M_17.09.2026_4",
"6M_17.09.2026_5": "6M_17.09.2026_5",
"6M_18.09.2026_1": "6M_18.09.2026_1",
"6M_18.09.2026_2": "6M_18.09.2026_2",
"6M_18.09.2026_3": "6M_18.09.2026_3",
"6M_18.09.2026_4": "6M_18.09.2026_4",
"6M_18.09.2026_5": "6M_18.09.2026_5",
"6M_19.09.2026_1": "6M_19.09.2026_1",
"6M_19.09.2026_2": "6M_19.09.2026_2",
"6M_19.09.2026_3": "6M_19.09.2026_3",
"6M_19.09.2026_4": "6M_19.09.2026_4",
"6M_19.09.2026_5": "6M_19.09.2026_5",
"6M_20.09.2026_1": "6M_20.09.2026_1",
"6M_20.09.2026_2": "6M_20.09.2026_2",
"6M_20.09.2026_3": "6M_20.09.2026_3",
"6M_20.09.2026_4": "6M_20.09.2026_4",
"6M_20.09.2026_5": "6M_20.09.2026_5",
"6M_21.09.2026_1": "6M_21.09.2026_1",
"6M_21.09.2026_2": "6M_21.09.2026_2",
"6M_21.09.2026_3": "6M_21.09.2026_3",
"6M_21.09.2026_4": "6M_21.09.2026_4",
"6M_21.09.2026_5": "6M_21.09.2026_5",
"6M_22.09.2026_1": "6M_22.09.2026_1",
"6M_22.09.2026_2": "6M_22.09.2026_2",
"6M_22.09.2026_3": "6M_22.09.2026_3",
"6M_22.09.2026_4": "6M_22.09.2026_4",
"6M_22.09.2026_5": "6M_22.09.2026_5",
"6M_23.09.2026_1": "6M_23.09.2026_1",
"6M_23.09.2026_2": "6M_23.09.2026_2",
"6M_23.09.2026_3": "6M_23.09.2026_3",
"6M_23.09.2026_4": "6M_23.09.2026_4",
"6M_23.09.2026_5": "6M_23.09.2026_5",
"6M_24.09.2026_1": "6M_24.09.2026_1",
"6M_24.09.2026_2": "6M_24.09.2026_2",
"6M_24.09.2026_3": "6M_24.09.2026_3",
"6M_24.09.2026_4": "6M_24.09.2026_4",
"6M_24.09.2026_5": "6M_24.09.2026_5",
"6M_25.09.2026_1": "6M_25.09.2026_1",
"6M_25.09.2026_2": "6M_25.09.2026_2",
"6M_25.09.2026_3": "6M_25.09.2026_3",
"6M_25.09.2026_4": "6M_25.09.2026_4",
"6M_25.09.2026_5": "6M_25.09.2026_5",
"6M_26.09.2026_1": "6M_26.09.2026_1",
"6M_26.09.2026_2": "6M_26.09.2026_2",
"6M_26.09.2026_3": "6M_26.09.2026_3",
"6M_26.09.2026_4": "6M_26.09.2026_4",
"6M_26.09.2026_5": "6M_26.09.2026_5",
"6M_27.09.2026_1": "6M_27.09.2026_1",
"6M_27.09.2026_2": "6M_27.09.2026_2",
"6M_27.09.2026_3": "6M_27.09.2026_3",
"6M_27.09.2026_4": "6M_27.09.2026_4",
"6M_27.09.2026_5": "6M_27.09.2026_5",
"6M_28.09.2026_1": "6M_28.09.2026_1",
"6M_28.09.2026_2": "6M_28.09.2026_2",
"6M_28.09.2026_3": "6M_28.09.2026_3",
"6M_28.09.2026_4": "6M_28.09.2026_4",
"6M_28.09.2026_5": "6M_28.09.2026_5",
"6M_29.09.2026_1": "6M_29.09.2026_1",
"6M_29.09.2026_2": "6M_29.09.2026_2",
"6M_29.09.2026_3": "6M_29.09.2026_3",
"6M_29.09.2026_4": "6M_29.09.2026_4",
"6M_29.09.2026_5": "6M_29.09.2026_5",
"6M_30.09.2026_1": "6M_30.09.2026_1",
"6M_30.09.2026_2": "6M_30.09.2026_2",
"6M_30.09.2026_3": "6M_30.09.2026_3",
"6M_30.09.2026_4": "6M_30.09.2026_4",
"6M_30.09.2026_5": "6M_30.09.2026_5",
"12M_01.09.2026_1": "12M_01.09.2026_1",
"12M_01.09.2026_2": "12M_01.09.2026_2",
"12M_01.09.2026_3": "12M_01.09.2026_3",
"12M_01.09.2026_4": "12M_01.09.2026_4",
"12M_01.09.2026_5": "12M_01.09.2026_5",
"12M_01.09.2026_6": "12M_01.09.2026_6",
"12M_01.09.2026_7": "12M_01.09.2026_7",
"12M_01.09.2026_8": "12M_01.09.2026_8",
"12M_01.09.2026_9": "12M_01.09.2026_9",
"12M_02.09.2026_1": "12M_02.09.2026_1",
"12M_02.09.2026_2": "12M_02.09.2026_2",
"12M_02.09.2026_3": "12M_02.09.2026_3",
"12M_02.09.2026_4": "12M_02.09.2026_4",
"12M_02.09.2026_5": "12M_02.09.2026_5",
"12M_02.09.2026_6": "12M_02.09.2026_6",
"12M_02.09.2026_7": "12M_02.09.2026_7",
"12M_02.09.2026_8": "12M_02.09.2026_8",
"12M_02.09.2026_9": "12M_02.09.2026_9",
"12M_03.09.2026_1": "12M_03.09.2026_1",
"12M_03.09.2026_2": "12M_03.09.2026_2",
"12M_03.09.2026_3": "12M_03.09.2026_3",
"12M_03.09.2026_4": "12M_03.09.2026_4",
"12M_03.09.2026_5": "12M_03.09.2026_5",
"12M_03.09.2026_6": "12M_03.09.2026_6",
"12M_03.09.2026_7": "12M_03.09.2026_7",
"12M_03.09.2026_8": "12M_03.09.2026_8",
"12M_03.09.2026_9": "12M_03.09.2026_9",
"12M_04.09.2026_1": "12M_04.09.2026_1",
"12M_04.09.2026_2": "12M_04.09.2026_2",
"12M_04.09.2026_3": "12M_04.09.2026_3",
"12M_04.09.2026_4": "12M_04.09.2026_4",
"12M_04.09.2026_5": "12M_04.09.2026_5",
"12M_04.09.2026_6": "12M_04.09.2026_6",
"12M_04.09.2026_7": "12M_04.09.2026_7",
"12M_04.09.2026_8": "12M_04.09.2026_8",
"12M_04.09.2026_9": "12M_04.09.2026_9",
"12M_05.09.2026_1": "12M_05.09.2026_1",
"12M_05.09.2026_2": "12M_05.09.2026_2",
"12M_05.09.2026_3": "12M_05.09.2026_3",
"12M_05.09.2026_4": "12M_05.09.2026_4",
"12M_05.09.2026_5": "12M_05.09.2026_5",
"12M_05.09.2026_6": "12M_05.09.2026_6",
"12M_05.09.2026_7": "12M_05.09.2026_7",
"12M_05.09.2026_8": "12M_05.09.2026_8",
"12M_05.09.2026_9": "12M_05.09.2026_9",
"12M_06.09.2026_1": "12M_06.09.2026_1",
"12M_06.09.2026_2": "12M_06.09.2026_2",
"12M_06.09.2026_3": "12M_06.09.2026_3",
"12M_06.09.2026_4": "12M_06.09.2026_4",
"12M_06.09.2026_5": "12M_06.09.2026_5",
"12M_06.09.2026_6": "12M_06.09.2026_6",
"12M_06.09.2026_7": "12M_06.09.2026_7",
"12M_06.09.2026_8": "12M_06.09.2026_8",
"12M_06.09.2026_9": "12M_06.09.2026_9",
"12M_07.09.2026_1": "12M_07.09.2026_1",
"12M_07.09.2026_2": "12M_07.09.2026_2",
"12M_07.09.2026_3": "12M_07.09.2026_3",
"12M_07.09.2026_4": "12M_07.09.2026_4",
"12M_07.09.2026_5": "12M_07.09.2026_5",
"12M_07.09.2026_6": "12M_07.09.2026_6",
"12M_07.09.2026_7": "12M_07.09.2026_7",
"12M_07.09.2026_8": "12M_07.09.2026_8",
"12M_07.09.2026_9": "12M_07.09.2026_9",
"12M_08.09.2026_1": "12M_08.09.2026_1",
"12M_08.09.2026_2": "12M_08.09.2026_2",
"12M_08.09.2026_3": "12M_08.09.2026_3",
"12M_08.09.2026_4": "12M_08.09.2026_4",
"12M_08.09.2026_5": "12M_08.09.2026_5",
"12M_08.09.2026_6": "12M_08.09.2026_6",
"12M_08.09.2026_7": "12M_08.09.2026_7",
"12M_08.09.2026_8": "12M_08.09.2026_8",
"12M_08.09.2026_9": "12M_08.09.2026_9",
"12M_09.09.2026_1": "12M_09.09.2026_1",
"12M_09.09.2026_2": "12M_09.09.2026_2",
"12M_09.09.2026_3": "12M_09.09.2026_3",
"12M_09.09.2026_4": "12M_09.09.2026_4",
"12M_09.09.2026_5": "12M_09.09.2026_5",
"12M_09.09.2026_6": "12M_09.09.2026_6",
"12M_09.09.2026_7": "12M_09.09.2026_7",
"12M_09.09.2026_8": "12M_09.09.2026_8",
"12M_09.09.2026_9": "12M_09.09.2026_9",
"12M_10.09.2026_1": "12M_10.09.2026_1",
"12M_10.09.2026_2": "12M_10.09.2026_2",
"12M_10.09.2026_3": "12M_10.09.2026_3",
"12M_10.09.2026_4": "12M_10.09.2026_4",
"12M_10.09.2026_5": "12M_10.09.2026_5",
"12M_10.09.2026_6": "12M_10.09.2026_6",
"12M_10.09.2026_7": "12M_10.09.2026_7",
"12M_10.09.2026_8": "12M_10.09.2026_8",
"12M_10.09.2026_9": "12M_10.09.2026_9",
"12M_11.09.2026_1": "12M_11.09.2026_1",
"12M_11.09.2026_2": "12M_11.09.2026_2",
"12M_11.09.2026_3": "12M_11.09.2026_3",
"12M_11.09.2026_4": "12M_11.09.2026_4",
"12M_11.09.2026_5": "12M_11.09.2026_5",
"12M_11.09.2026_6": "12M_11.09.2026_6",
"12M_11.09.2026_7": "12M_11.09.2026_7",
"12M_11.09.2026_8": "12M_11.09.2026_8",
"12M_11.09.2026_9": "12M_11.09.2026_9",
"12M_12.09.2026_1": "12M_12.09.2026_1",
"12M_12.09.2026_2": "12M_12.09.2026_2",
"12M_12.09.2026_3": "12M_12.09.2026_3",
"12M_12.09.2026_4": "12M_12.09.2026_4",
"12M_12.09.2026_5": "12M_12.09.2026_5",
"12M_12.09.2026_6": "12M_12.09.2026_6",
"12M_12.09.2026_7": "12M_12.09.2026_7",
"12M_12.09.2026_8": "12M_12.09.2026_8",
"12M_12.09.2026_9": "12M_12.09.2026_9",
"12M_13.09.2026_1": "12M_13.09.2026_1",
"12M_13.09.2026_2": "12M_13.09.2026_2",
"12M_13.09.2026_3": "12M_13.09.2026_3",
"12M_13.09.2026_4": "12M_13.09.2026_4",
"12M_13.09.2026_5": "12M_13.09.2026_5",
"12M_13.09.2026_6": "12M_13.09.2026_6",
"12M_13.09.2026_7": "12M_13.09.2026_7",
"12M_13.09.2026_8": "12M_13.09.2026_8",
"12M_13.09.2026_9": "12M_13.09.2026_9",
"12M_14.09.2026_1": "12M_14.09.2026_1",
"12M_14.09.2026_2": "12M_14.09.2026_2",
"12M_14.09.2026_3": "12M_14.09.2026_3",
"12M_14.09.2026_4": "12M_14.09.2026_4",
"12M_14.09.2026_5": "12M_14.09.2026_5",
"12M_14.09.2026_6": "12M_14.09.2026_6",
"12M_14.09.2026_7": "12M_14.09.2026_7",
"12M_14.09.2026_8": "12M_14.09.2026_8",
"12M_14.09.2026_9": "12M_14.09.2026_9",
"12M_15.09.2026_1": "12M_15.09.2026_1",
"12M_15.09.2026_2": "12M_15.09.2026_2",
"12M_15.09.2026_3": "12M_15.09.2026_3",
"12M_15.09.2026_4": "12M_15.09.2026_4",
"12M_15.09.2026_5": "12M_15.09.2026_5",
"12M_15.09.2026_6": "12M_15.09.2026_6",
"12M_15.09.2026_7": "12M_15.09.2026_7",
"12M_15.09.2026_8": "12M_15.09.2026_8",
"12M_15.09.2026_9": "12M_15.09.2026_9",
"12M_16.09.2026_1": "12M_16.09.2026_1",
"12M_16.09.2026_2": "12M_16.09.2026_2",
"12M_16.09.2026_3": "12M_16.09.2026_3",
"12M_16.09.2026_4": "12M_16.09.2026_4",
"12M_16.09.2026_5": "12M_16.09.2026_5",
"12M_16.09.2026_6": "12M_16.09.2026_6",
"12M_16.09.2026_7": "12M_16.09.2026_7",
"12M_16.09.2026_8": "12M_16.09.2026_8",
"12M_16.09.2026_9": "12M_16.09.2026_9",
"12M_17.09.2026_1": "12M_17.09.2026_1",
"12M_17.09.2026_2": "12M_17.09.2026_2",
"12M_17.09.2026_3": "12M_17.09.2026_3",
"12M_17.09.2026_4": "12M_17.09.2026_4",
"12M_17.09.2026_5": "12M_17.09.2026_5",
"12M_17.09.2026_6": "12M_17.09.2026_6",
"12M_17.09.2026_7": "12M_17.09.2026_7",
"12M_17.09.2026_8": "12M_17.09.2026_8",
"12M_17.09.2026_9": "12M_17.09.2026_9",
"12M_18.09.2026_1": "12M_18.09.2026_1",
"12M_18.09.2026_2": "12M_18.09.2026_2",
"12M_18.09.2026_3": "12M_18.09.2026_3",
"12M_18.09.2026_4": "12M_18.09.2026_4",
"12M_18.09.2026_5": "12M_18.09.2026_5",
"12M_18.09.2026_6": "12M_18.09.2026_6",
"12M_18.09.2026_7": "12M_18.09.2026_7",
"12M_18.09.2026_8": "12M_18.09.2026_8",
"12M_18.09.2026_9": "12M_18.09.2026_9",
"12M_19.09.2026_1": "12M_19.09.2026_1",
"12M_19.09.2026_2": "12M_19.09.2026_2",
"12M_19.09.2026_3": "12M_19.09.2026_3",
"12M_19.09.2026_4": "12M_19.09.2026_4",
"12M_19.09.2026_5": "12M_19.09.2026_5",
"12M_19.09.2026_6": "12M_19.09.2026_6",
"12M_19.09.2026_7": "12M_19.09.2026_7",
"12M_19.09.2026_8": "12M_19.09.2026_8",
"12M_19.09.2026_9": "12M_19.09.2026_9",
"12M_20.09.2026_1": "12M_20.09.2026_1",
"12M_20.09.2026_2": "12M_20.09.2026_2",
"12M_20.09.2026_3": "12M_20.09.2026_3",
"12M_20.09.2026_4": "12M_20.09.2026_4",
"12M_20.09.2026_5": "12M_20.09.2026_5",
"12M_20.09.2026_6": "12M_20.09.2026_6",
"12M_20.09.2026_7": "12M_20.09.2026_7",
"12M_20.09.2026_8": "12M_20.09.2026_8",
"12M_20.09.2026_9": "12M_20.09.2026_9",
"12M_21.09.2026_1": "12M_21.09.2026_1",
"12M_21.09.2026_2": "12M_21.09.2026_2",
"12M_21.09.2026_3": "12M_21.09.2026_3",
"12M_21.09.2026_4": "12M_21.09.2026_4",
"12M_21.09.2026_5": "12M_21.09.2026_5",
"12M_21.09.2026_6": "12M_21.09.2026_6",
"12M_21.09.2026_7": "12M_21.09.2026_7",
"12M_21.09.2026_8": "12M_21.09.2026_8",
"12M_21.09.2026_9": "12M_21.09.2026_9",
"12M_22.09.2026_1": "12M_22.09.2026_1",
"12M_22.09.2026_2": "12M_22.09.2026_2",
"12M_22.09.2026_3": "12M_22.09.2026_3",
"12M_22.09.2026_4": "12M_22.09.2026_4",
"12M_22.09.2026_5": "12M_22.09.2026_5",
"12M_22.09.2026_6": "12M_22.09.2026_6",
"12M_22.09.2026_7": "12M_22.09.2026_7",
"12M_22.09.2026_8": "12M_22.09.2026_8",
"12M_22.09.2026_9": "12M_22.09.2026_9",
"12M_23.09.2026_1": "12M_23.09.2026_1",
"12M_23.09.2026_2": "12M_23.09.2026_2",
"12M_23.09.2026_3": "12M_23.09.2026_3",
"12M_23.09.2026_4": "12M_23.09.2026_4",
"12M_23.09.2026_5": "12M_23.09.2026_5",
"12M_23.09.2026_6": "12M_23.09.2026_6",
"12M_23.09.2026_7": "12M_23.09.2026_7",
"12M_23.09.2026_8": "12M_23.09.2026_8",
"12M_23.09.2026_9": "12M_23.09.2026_9",
"12M_24.09.2026_1": "12M_24.09.2026_1",
"12M_24.09.2026_2": "12M_24.09.2026_2",
"12M_24.09.2026_3": "12M_24.09.2026_3",
"12M_24.09.2026_4": "12M_24.09.2026_4",
"12M_24.09.2026_5": "12M_24.09.2026_5",
"12M_24.09.2026_6": "12M_24.09.2026_6",
"12M_24.09.2026_7": "12M_24.09.2026_7",
"12M_24.09.2026_8": "12M_24.09.2026_8",
"12M_24.09.2026_9": "12M_24.09.2026_9",
"12M_25.09.2026_1": "12M_25.09.2026_1",
"12M_25.09.2026_2": "12M_25.09.2026_2",
"12M_25.09.2026_3": "12M_25.09.2026_3",
"12M_25.09.2026_4": "12M_25.09.2026_4",
"12M_25.09.2026_5": "12M_25.09.2026_5",
"12M_25.09.2026_6": "12M_25.09.2026_6",
"12M_25.09.2026_7": "12M_25.09.2026_7",
"12M_25.09.2026_8": "12M_25.09.2026_8",
"12M_25.09.2026_9": "12M_25.09.2026_9",
"12M_26.09.2026_1": "12M_26.09.2026_1",
"12M_26.09.2026_2": "12M_26.09.2026_2",
"12M_26.09.2026_3": "12M_26.09.2026_3",
"12M_26.09.2026_4": "12M_26.09.2026_4",
"12M_26.09.2026_5": "12M_26.09.2026_5",
"12M_26.09.2026_6": "12M_26.09.2026_6",
"12M_26.09.2026_7": "12M_26.09.2026_7",
"12M_26.09.2026_8": "12M_26.09.2026_8",
"12M_26.09.2026_9": "12M_26.09.2026_9",
"12M_27.09.2026_1": "12M_27.09.2026_1",
"12M_27.09.2026_2": "12M_27.09.2026_2",
"12M_27.09.2026_3": "12M_27.09.2026_3",
"12M_27.09.2026_4": "12M_27.09.2026_4",
"12M_27.09.2026_5": "12M_27.09.2026_5",
"12M_27.09.2026_6": "12M_27.09.2026_6",
"12M_27.09.2026_7": "12M_27.09.2026_7",
"12M_27.09.2026_8": "12M_27.09.2026_8",
"12M_27.09.2026_9": "12M_27.09.2026_9",
"12M_28.09.2026_1": "12M_28.09.2026_1",
"12M_28.09.2026_2": "12M_28.09.2026_2",
"12M_28.09.2026_3": "12M_28.09.2026_3",
"12M_28.09.2026_4": "12M_28.09.2026_4",
"12M_28.09.2026_5": "12M_28.09.2026_5",
"12M_28.09.2026_6": "12M_28.09.2026_6",
"12M_28.09.2026_7": "12M_28.09.2026_7",
"12M_28.09.2026_8": "12M_28.09.2026_8",
"12M_28.09.2026_9": "12M_28.09.2026_9",
"12M_29.09.2026_1": "12M_29.09.2026_1",
"12M_29.09.2026_2": "12M_29.09.2026_2",
"12M_29.09.2026_3": "12M_29.09.2026_3",
"12M_29.09.2026_4": "12M_29.09.2026_4",
"12M_29.09.2026_5": "12M_29.09.2026_5",
"12M_29.09.2026_6": "12M_29.09.2026_6",
"12M_29.09.2026_7": "12M_29.09.2026_7",
"12M_29.09.2026_8": "12M_29.09.2026_8",
"12M_29.09.2026_9": "12M_29.09.2026_9",
"12M_30.09.2026_1": "12M_30.09.2026_1",
"12M_30.09.2026_2": "12M_30.09.2026_2",
"12M_30.09.2026_3": "12M_30.09.2026_3",
"12M_30.09.2026_4": "12M_30.09.2026_4",
"12M_30.09.2026_5": "12M_30.09.2026_5",
"12M_30.09.2026_6": "12M_30.09.2026_6",
"12M_30.09.2026_7": "12M_30.09.2026_7",
"12M_30.09.2026_8": "12M_30.09.2026_8",
"12M_30.09.2026_9": "12M_30.09.2026_9",
"12M_01.09.2026_10": "12M_01.09.2026_10",
"12M_01.09.2026_11": "12M_01.09.2026_11",
"12M_02.09.2026_10": "12M_02.09.2026_10",
"12M_02.09.2026_11": "12M_02.09.2026_11",
"12M_03.09.2026_10": "12M_03.09.2026_10",
"12M_03.09.2026_11": "12M_03.09.2026_11",
"12M_04.09.2026_10": "12M_04.09.2026_10",
"12M_04.09.2026_11": "12M_04.09.2026_11",
"12M_05.09.2026_10": "12M_05.09.2026_10",
"12M_05.09.2026_11": "12M_05.09.2026_11",
"12M_06.09.2026_10": "12M_06.09.2026_10",
"12M_06.09.2026_11": "12M_06.09.2026_11",
"12M_07.09.2026_10": "12M_07.09.2026_10",
"12M_07.09.2026_11": "12M_07.09.2026_11",
"12M_08.09.2026_10": "12M_08.09.2026_10",
"12M_08.09.2026_11": "12M_08.09.2026_11",
"12M_09.09.2026_10": "12M_09.09.2026_10",
"12M_09.09.2026_11": "12M_09.09.2026_11",
"12M_10.09.2026_10": "12M_10.09.2026_10",
"12M_10.09.2026_11": "12M_10.09.2026_11",
"12M_11.09.2026_10": "12M_11.09.2026_10",
"12M_11.09.2026_11": "12M_11.09.2026_11",
"12M_12.09.2026_10": "12M_12.09.2026_10",
"12M_12.09.2026_11": "12M_12.09.2026_11",
"12M_13.09.2026_10": "12M_13.09.2026_10",
"12M_13.09.2026_11": "12M_13.09.2026_11",
"12M_14.09.2026_10": "12M_14.09.2026_10",
"12M_14.09.2026_11": "12M_14.09.2026_11",
"12M_15.09.2026_10": "12M_15.09.2026_10",
"12M_15.09.2026_11": "12M_15.09.2026_11",
"12M_16.09.2026_10": "12M_16.09.2026_10",
"12M_16.09.2026_11": "12M_16.09.2026_11",
"12M_17.09.2026_10": "12M_17.09.2026_10",
"12M_17.09.2026_11": "12M_17.09.2026_11",
"12M_18.09.2026_10": "12M_18.09.2026_10",
"12M_18.09.2026_11": "12M_18.09.2026_11",
"12M_19.09.2026_10": "12M_19.09.2026_10",
"12M_19.09.2026_11": "12M_19.09.2026_11",
"12M_20.09.2026_10": "12M_20.09.2026_10",
"12M_20.09.2026_11": "12M_20.09.2026_11",
"12M_21.09.2026_10": "12M_21.09.2026_10",
"12M_21.09.2026_11": "12M_21.09.2026_11",
"12M_22.09.2026_10": "12M_22.09.2026_10",
"12M_22.09.2026_11": "12M_22.09.2026_11",
"12M_23.09.2026_10": "12M_23.09.2026_10",
"12M_23.09.2026_11": "12M_23.09.2026_11",
"12M_24.09.2026_10": "12M_24.09.2026_10",
"12M_24.09.2026_11": "12M_24.09.2026_11",
"12M_25.09.2026_10": "12M_25.09.2026_10",
"12M_25.09.2026_11": "12M_25.09.2026_11",
"12M_26.09.2026_10": "12M_26.09.2026_10",
"12M_26.09.2026_11": "12M_26.09.2026_11",
"12M_27.09.2026_10": "12M_27.09.2026_10",
"12M_27.09.2026_11": "12M_27.09.2026_11",
"12M_28.09.2026_10": "12M_28.09.2026_10",
"12M_28.09.2026_11": "12M_28.09.2026_11",
"12M_29.09.2026_10": "12M_29.09.2026_10",
"12M_29.09.2026_11": "12M_29.09.2026_11",
"12M_30.09.2026_10": "12M_30.09.2026_10",
"12M_30.09.2026_11": "12M_30.09.2026_11"
}
}Old
{
"x-enum-descriptions": {}
}14 September 2026
New
{
"x-removal-date": "2026-10-06"
}New
{
"x-removal-date": "2026-10-28"
}11 September 2026
New
[
{
"name": "Validate that either <code>\u2068partner_commission_number\u2069</code> or <code>\u2068partner_commission\u2069</code> are provided",
"description": "Validate that exactly one of <code>\u2068partner_commission_number\u2069</code> or <code>\u2068partner_commission\u2069</code> is provided.",
"possible_errors": [
"mutually_exclusive_field_required"
]
},
{
"name": "Validate an uplift is only applied to a trailing partner commission",
"description": "Validate that apply_uplift is not set for a one-off partner commission, which has no price-adjustment bundle to uplift.",
"possible_errors": [
"partner_commission_definition_invalid"
]
},
{
"name": "Validate a fixed-amount override is only applied to a one-off partner commission",
"description": "Validate that override_fixed_amount is not set for a trailing partner commission, which has no fixed-amount override on its contract.",
"possible_errors": [
"partner_commission_definition_invalid"
]
}
]Old
[
{
"name": "Validate a fixed-amount override is only applied to a one-off partner commission",
"description": "Validate that override_fixed_amount is not set for a trailing partner commission, which has no fixed-amount override on its contract.",
"possible_errors": [
"partner_commission_definition_invalid"
]
}
]
No attributes to display
Old
{
"required": true
}New
{
"x-validators": [
{
"name": "Validate partner commission numbers exist",
"description": "Validate that all partner commission numbers in the term configurations exist in Kraken.",
"possible_errors": [
"not_found"
]
},
{
"name": "Validate partner commission definitions are unique",
"description": "Validate that no two configurations in the term describe the same partner commission, which would resolve to one commission held twice by the term.",
"possible_errors": [
"duplicate_partner_commission_definitions"
]
}
]
}Old
{
"x-validators": [
{
"name": "Validate partner commission numbers exist",
"description": "Validate that all partner commission numbers in the term configurations exist in Kraken.",
"possible_errors": [
"not_found"
]
}
]
}10 September 2026
No attributes to display
No attributes to display
No attributes to display
No attributes to display
New
{
"required": true
}9 September 2026
New
{
"x-enum-descriptions": {
"pagador_alternativo": "PAGADOR ALTERNATIVO"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"PAGADOR ALTERNATIVO": "PAGADOR ALTERNATIVO"
}
}Old
{
"x-enum-descriptions": {}
}4 September 2026
No attributes to display
3 September 2026
New
{
"x-enum-descriptions": {
"interesados_fanplaytv": "Interesados FANPLAY TV"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Interesados FANPLAY TV": "Interesados FANPLAY TV"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"retencion_sin_actualizar_error_del_servidor": "Retencion sin actualizar error del servidor"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Retencion sin actualizar error del servidor": "Retencion sin actualizar error del servidor"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"ruleta_oocc": "Ruleta OOCC (solo usar d\u00eda ruleta)"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Ruleta OOCC (solo usar d\u00eda ruleta)": "Ruleta OOCC (solo usar d\u00eda ruleta)"
}
}Old
{
"x-enum-descriptions": {}
}2 September 2026
New
{
"x-enum-descriptions": {
"cobro_duplicado_wa_31_agosto": "COBRO DUPLICADO WA 31 AGOSTO"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"COBRO DUPLICADO WA 31 AGOSTO": "COBRO DUPLICADO WA 31 AGOSTO"
}
}Old
{
"x-enum-descriptions": {}
}1 September 2026
New
{
"Codigo": "#/components/schemas/CodigoCharacteristic",
"Promocion": "#/components/schemas/PromocionCharacteristic"
}New
[
{
"$ref": "#/components/schemas/SalesChannelCharacteristic"
},
{
"$ref": "#/components/schemas/FeeCarteraCharacteristic"
},
{
"$ref": "#/components/schemas/GarantiaOrigenCharacteristic"
},
{
"$ref": "#/components/schemas/ExtraCharacteristic"
},
{
"$ref": "#/components/schemas/VersionCharacteristic"
},
{
"$ref": "#/components/schemas/CodigoCharacteristic"
},
{
"$ref": "#/components/schemas/PromocionCharacteristic"
},
{
"$ref": "#/components/schemas/ProductoCharacteristic"
}
]Old
[
{
"$ref": "#/components/schemas/ProductoCharacteristic"
},
{
"$ref": "#/components/schemas/GarantiaOrigenCharacteristic"
},
{
"$ref": "#/components/schemas/SalesChannelCharacteristic"
},
{
"$ref": "#/components/schemas/VersionCharacteristic"
},
{
"$ref": "#/components/schemas/ExtraCharacteristic"
},
{
"$ref": "#/components/schemas/FeeCarteraCharacteristic"
}
]31 August 2026
New
[
{
"name": "Validate that account data is staged and account created",
"description": "Validate that an account exists for the <code>external_account_number</code> and <code>import_supplier</code> code. This means that the import data must already have been staged and processed into an account.",
"possible_errors": [
"account_not_found",
"import_process_does_not_exist"
]
},
{
"name": "Validate that migration is ongoing",
"description": "Validate whether or not an import supplier is open for further data migration.",
"possible_errors": [
"import_supplier_migration_not_ongoing"
]
},
{
"name": "Validate that either <code>\u2068instruction_reference\u2069</code> or <code>\u2068reference\u2069</code> are provided",
"description": "Validate that exactly one of <code>\u2068instruction_reference\u2069</code> or <code>\u2068reference\u2069</code> is provided.",
"possible_errors": [
"mutually_exclusive_field_required"
]
},
{
"name": "Validate card type is only given for card instructions",
"description": "Validates that a card type is only provided when the payment instruction is a card.",
"possible_errors": [
"card_type_on_non_card_instruction"
]
}
]Old
[
{
"name": "Validate that account data is staged and account created",
"description": "Validate that an account exists for the <code>external_account_number</code> and <code>import_supplier</code> code. This means that the import data must already have been staged and processed into an account.",
"possible_errors": [
"account_not_found",
"import_process_does_not_exist"
]
},
{
"name": "Validate that migration is ongoing",
"description": "Validate whether or not an import supplier is open for further data migration.",
"possible_errors": [
"import_supplier_migration_not_ongoing"
]
},
{
"name": "Validate that either <code>\u2068instruction_reference\u2069</code> or <code>\u2068reference\u2069</code> are provided",
"description": "Validate that exactly one of <code>\u2068instruction_reference\u2069</code> or <code>\u2068reference\u2069</code> is provided.",
"possible_errors": [
"mutually_exclusive_field_required"
]
}
]
No attributes to display
28 August 2026
New
{
"x-enum-descriptions": {
"flows_incidence_por_campo_direccion": "Flows INCIDENCE por campo direccion"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Flows INCIDENCE por campo direccion": "Flows INCIDENCE por campo direccion"
}
}Old
{
"x-enum-descriptions": {}
}27 August 2026
No attributes to display
No attributes to display
New
{
"x-enum-descriptions": {
"ct_wa_sin_cuenta_bancaria": "CT WA SIN CUENTA BANCARIA"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"CT WA SIN CUENTA BANCARIA": "CT WA SIN CUENTA BANCARIA"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"prueba_no_utilizar": "PRUEBA NO UTILIZAR"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"PRUEBA NO UTILIZAR": "PRUEBA NO UTILIZAR"
}
}Old
{
"x-enum-descriptions": {}
}New
[
{
"name": "Validate <code>\u2068effective_to\u2069</code> not before <code>\u2068effective_from\u2069</code>",
"description": "Validates that <code>\u2068effective_to\u2069</code>, if given, is on or later than <code>\u2068effective_from\u2069</code>.",
"possible_errors": [
"start_date_later_than_end_date"
]
},
{
"name": "Validate addons are compatible with their agreement",
"description": "Validate that addons provided for an agreement are compatible and configured for agreement's product.",
"possible_errors": [
"addon_band_not_valid_for_agreement",
"multiple_addons_in_the_same_family"
]
},
{
"name": "Validate that the rate bands given in the rate overrides are valid for the product code",
"description": "Validate that the rate bands given in the rate overrides exist for the agreement's product.",
"possible_errors": [
"invalid_period",
"rate_band_does_not_exist"
]
},
{
"name": "Validate that required product characteristics are provided",
"description": "Validates that when an agreement's product is linked to a specification defining product characteristics, a value for each required characteristic is provided in <code>characteristics</code>.",
"possible_errors": [
"missing_required_product_characteristics"
]
},
{
"name": "Validate <code>\u2068effective_to\u2069</code> not before <code>\u2068effective_from\u2069</code>",
"description": "Validates that <code>\u2068effective_to\u2069</code>, if given, is on or later than <code>\u2068effective_from\u2069</code>.",
"possible_errors": [
"start_date_later_than_end_date"
]
},
{
"name": "Validate that the agreement start date is within the products range",
"description": "Valdiate the the agreement's start date falls within the specified time range of the associated product.",
"possible_errors": [
"start_date_outside_of_product_range"
]
}
]Old
[
{
"name": "Validate <code>\u2068effective_to\u2069</code> not before <code>\u2068effective_from\u2069</code>",
"description": "Validates that <code>\u2068effective_to\u2069</code>, if given, is on or later than <code>\u2068effective_from\u2069</code>.",
"possible_errors": [
"start_date_later_than_end_date"
]
},
{
"name": "Validate addons are compatible with their agreement",
"description": "Validate that addons provided for an agreement are compatible and configured for agreement's product.",
"possible_errors": [
"addon_band_not_valid_for_agreement",
"multiple_addons_in_the_same_family"
]
},
{
"name": "Validate that the rate bands given in the rate overrides are valid for the product code",
"description": "Validate that the rate bands given in the rate overrides exist for the agreement's product.",
"possible_errors": [
"invalid_period",
"rate_band_does_not_exist"
]
},
{
"name": "Validate <code>\u2068effective_to\u2069</code> not before <code>\u2068effective_from\u2069</code>",
"description": "Validates that <code>\u2068effective_to\u2069</code>, if given, is on or later than <code>\u2068effective_from\u2069</code>.",
"possible_errors": [
"start_date_later_than_end_date"
]
},
{
"name": "Validate that the agreement start date is within the products range",
"description": "Valdiate the the agreement's start date falls within the specified time range of the associated product.",
"possible_errors": [
"start_date_outside_of_product_range"
]
}
]New
[
{
"name": "Validate <code>\u2068effective_to\u2069</code> not before <code>\u2068effective_from\u2069</code>",
"description": "Validates that <code>\u2068effective_to\u2069</code>, if given, is on or later than <code>\u2068effective_from\u2069</code>.",
"possible_errors": [
"start_date_later_than_end_date"
]
},
{
"name": "Validate addons are compatible with their agreement",
"description": "Validate that addons provided for an agreement are compatible and configured for agreement's product.",
"possible_errors": [
"addon_band_not_valid_for_agreement",
"multiple_addons_in_the_same_family"
]
},
{
"name": "Validate that the rate bands given in the rate overrides are valid for the product code",
"description": "Validate that the rate bands given in the rate overrides exist for the agreement's product.",
"possible_errors": [
"invalid_period",
"rate_band_does_not_exist"
]
},
{
"name": "Validate that required product characteristics are provided",
"description": "Validates that when an agreement's product is linked to a specification defining product characteristics, a value for each required characteristic is provided in <code>characteristics</code>.",
"possible_errors": [
"missing_required_product_characteristics"
]
},
{
"name": "Validate <code>\u2068effective_to\u2069</code> not before <code>\u2068effective_from\u2069</code>",
"description": "Validates that <code>\u2068effective_to\u2069</code>, if given, is on or later than <code>\u2068effective_from\u2069</code>.",
"possible_errors": [
"start_date_later_than_end_date"
]
},
{
"name": "Validate that the agreement start date is within the products range",
"description": "Valdiate the the agreement's start date falls within the specified time range of the associated product.",
"possible_errors": [
"start_date_outside_of_product_range"
]
}
]Old
[
{
"name": "Validate <code>\u2068effective_to\u2069</code> not before <code>\u2068effective_from\u2069</code>",
"description": "Validates that <code>\u2068effective_to\u2069</code>, if given, is on or later than <code>\u2068effective_from\u2069</code>.",
"possible_errors": [
"start_date_later_than_end_date"
]
},
{
"name": "Validate addons are compatible with their agreement",
"description": "Validate that addons provided for an agreement are compatible and configured for agreement's product.",
"possible_errors": [
"addon_band_not_valid_for_agreement",
"multiple_addons_in_the_same_family"
]
},
{
"name": "Validate that the rate bands given in the rate overrides are valid for the product code",
"description": "Validate that the rate bands given in the rate overrides exist for the agreement's product.",
"possible_errors": [
"invalid_period",
"rate_band_does_not_exist"
]
},
{
"name": "Validate <code>\u2068effective_to\u2069</code> not before <code>\u2068effective_from\u2069</code>",
"description": "Validates that <code>\u2068effective_to\u2069</code>, if given, is on or later than <code>\u2068effective_from\u2069</code>.",
"possible_errors": [
"start_date_later_than_end_date"
]
},
{
"name": "Validate that the agreement start date is within the products range",
"description": "Valdiate the the agreement's start date falls within the specified time range of the associated product.",
"possible_errors": [
"start_date_outside_of_product_range"
]
}
]New
{
"required": true
}26 August 2026
No attributes to display
No attributes to display
24 August 2026
New
{
"x-enum-descriptions": {
"ct_pendiente_para_titular_entrante_cif": "CT pendiente para titular entrante CIF"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"CT pendiente para titular entrante CIF": "CT pendiente para titular entrante CIF"
}
}Old
{
"x-enum-descriptions": {}
}21 August 2026
New
{
"x-enum-descriptions": {
"SV": "[SV] Severe vulnerable",
"VU": "[VU] Vulnerable",
"ESV": "[ESV] Extremely severe vulnerable"
}
}Old
{
"x-enum-descriptions": {
"SV": "(SV) Severe vulnerable",
"VU": "(VU) Vulnerable",
"ESV": "(ESV) Extremely severe vulnerable"
}
}New
{
"x-enum-descriptions": {
"CE": "[CE] Special circumstances",
"FN": "[FN] Large family",
"IV": "[IV] Minimum vital income",
"M1": "[M1] Change of Supply Point Distributor Agreement",
"NA": "[NA] General Income-Based Eligibility",
"PM": "[PM] Pensioners",
"VC": "[VC] Certified vulnerable"
}
}Old
{
"x-enum-descriptions": {
"CE": "Special circumstances",
"FN": "Large family",
"IV": "Minimum vital income",
"M1": "Change of Supply Point Distributor Agreement",
"NA": "General Income-Based Eligibility",
"PM": "Pensioners",
"VC": "Certified vulnerable"
}
}New
{
"x-enum-descriptions": {
"01": "[01] Eligible vulnerable consumer",
"02": "[02] Eligible severe vulnerable consumer",
"03": "[03] Not eligible vulnerable consumer",
"04": "[04] Calculation impossibility",
"05": "[05] Eligible extreme vulnerable consumer"
}
}Old
{
"x-enum-descriptions": {
"01": "(01) Eligible vulnerable consumer",
"02": "(02) Eligible severe vulnerable consumer",
"03": "(03) Not eligible vulnerable consumer",
"04": "(04) Calculation impossibility",
"05": "(05) Eligible extreme vulnerable consumer"
}
}20 August 2026
New
{
"x-enum-descriptions": {
"sin_renovacion_en_el_agreement": "Sin renovacion en el agreement"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Sin renovacion en el agreement": "Sin renovacion en el agreement"
}
}Old
{
"x-enum-descriptions": {}
}
No attributes to display
No attributes to display
New
{
"x-enum-descriptions": {
"FanPlay": "FanPlay",
"DAZN Motor": "DAZN Motor",
"DAZN Futbol": "DAZN Futbol",
"DAZN Premium": "DAZN Premium",
"FanPlay + DAZN Futbol": "FanPlay + DAZN Futbol"
}
}Old
{
"x-enum-descriptions": {
"Dazn Motor": "Dazn Motor",
"Dazn Futbol": "Dazn Futbol",
"Dazn Premium": "Dazn Premium"
}
}19 August 2026
No attributes to display
New
{
"x-enum-descriptions": {
"camp_recobro_deuda_wa_agosto": "Camp recobro deuda WA agosto"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Camp recobro deuda WA agosto": "Camp recobro deuda WA agosto"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"ADVANCE_PAYMENT": "Advance Payment"
}
}Old
{
"x-enum-descriptions": {}
}18 August 2026
New
[
{
"name": "Validate <code>\u2068valid_to\u2069</code> not before <code>\u2068valid_from\u2069</code>",
"description": "Validates that <code>\u2068valid_to\u2069</code>, if given, is on or later than <code>\u2068valid_from\u2069</code>.",
"possible_errors": [
"start_date_later_than_end_date"
]
},
{
"name": "Validate contracted volume bounds are ordered",
"description": "Validate that a contracted volume period's minimum is not greater than its maximum",
"possible_errors": [
"contracted_volume_minimum_exceeds_maximum"
]
},
{
"name": "Validate contracted volume unit is valid for its market",
"description": "Validate that a contracted volume period's unit is one its market accepts",
"possible_errors": [
"contracted_volume_unit_invalid_for_market"
]
}
]Old
[
{
"name": "Validate <code>\u2068valid_to\u2069</code> not before <code>\u2068valid_from\u2069</code>",
"description": "Validates that <code>\u2068valid_to\u2069</code>, if given, is on or later than <code>\u2068valid_from\u2069</code>.",
"possible_errors": [
"start_date_later_than_end_date"
]
}
]
No attributes to display
No attributes to display
No attributes to display
14 August 2026
New
{
"x-enum-descriptions": {
"NO_CONTRACT": "No contract",
"OVERPAYMENT": "Overpayment",
"TRANSFER_ISU": "Transfer (ISU)",
"DD_FAILURE_ISU": "Direct debit failure (ISU)",
"CONTRACT_CANCELLATION": "Contract cancellation"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-removal-date": "2026-08-28"
}New
{
"x-removal-date": "2026-08-28"
}New
{
"x-removal-date": "2026-10-16"
}13 August 2026
New
[
{
"name": "Validate that business information is provided if not linking account to business with contract",
"description": "Validate that business information is provided for the business to link the account to if <code>link_account_to_business_with_contract</code> is false for the given import supplier.",
"possible_errors": [
"business_information_required_if_not_linking_via_contract"
]
},
{
"name": "Validate that business information is not provided if linking an account to the business of the business contract.",
"description": "Validate that business information is not provided for the business to link the account to if <code>link_account_to_business_with_contract</code> is true for the given import supplier.",
"possible_errors": [
"business_information_not_required_if_linking_via_contract"
]
},
{
"name": "Validate that at least one contract identifier is provided for import",
"description": "Validate that at least one of <code>business_contract_identifiers</code> or <code>business_contract_identifier</code> is provided in the payload.",
"possible_errors": [
"missing_contract_identifier"
]
},
{
"name": "Validate that <code>\u2068business_contract_identifiers\u2069</code> and <code>\u2068business_contracts\u2069</code> are not both provided",
"description": "Validate that \u2068business_contract_identifiers\u2069 and \u2068business_contracts\u2069 are not both provided.",
"possible_errors": [
"fields_are_mutually_exclusive"
]
}
]Old
[
{
"name": "Validate that business information is provided if not linking account to business with contract",
"description": "Validate that business information is provided for the business to link the account to if <code>link_account_to_business_with_contract</code> is false for the given import supplier.",
"possible_errors": [
"business_information_required_if_not_linking_via_contract"
]
},
{
"name": "Validate that business information is not provided if linking an account to the business of the business contract.",
"description": "Validate that business information is not provided for the business to link the account to if <code>link_account_to_business_with_contract</code> is true for the given import supplier.",
"possible_errors": [
"business_information_not_required_if_linking_via_contract"
]
},
{
"name": "Validate that at least one contract identifier is provided for import",
"description": "Validate that at least one of <code>business_contract_identifiers</code> or <code>business_contract_identifier</code> is provided in the payload.",
"possible_errors": [
"missing_contract_identifier"
]
}
]
No attributes to display
Use instead
business_contracts
New
{
"x-use-instead": "business_contracts"
}Old
{
"x-use-instead": "business_contract_identifiers"
}11 August 2026
No attributes to display
7 August 2026
New
{
"oneOf": [
{
"type": "string",
"format": "email",
"maxLength": 254
},
{
"type": "string",
"maxLength": 0
}
]
}Old
{
"type": "string",
"format": "email",
"maxLength": 254
}New
{
"oneOf": [
{
"type": "string",
"format": "email",
"maxLength": 254
},
{
"type": "string",
"maxLength": 0
}
]
}Old
{
"type": "string",
"format": "email",
"maxLength": 254
}New
{
"oneOf": [
{
"type": "string",
"format": "email",
"maxLength": 254
},
{
"type": "string",
"maxLength": 0
}
]
}Old
{
"type": "string",
"format": "email",
"maxLength": 254
}New
{
"oneOf": [
{
"type": "string",
"format": "email",
"maxLength": 254
},
{
"type": "string",
"maxLength": 0
}
]
}Old
{
"type": "string",
"format": "email",
"maxLength": 254
}6 August 2026
New
{
"x-enum-descriptions": {
"a305_incidence": "A305 INCIDENCE"
}
}Old
{
"x-enum-descriptions": {
"a305_en_incidence": "A305 en INCIDENCE"
}
}New
{
"x-enum-descriptions": {
"A305 INCIDENCE": "A305 INCIDENCE"
}
}Old
{
"x-enum-descriptions": {
"A305 en INCIDENCE": "A305 en INCIDENCE"
}
}31 July 2026
New
[
{
"name": "Validate <code>\u2068valid_to\u2069</code> not before or equal to <code>\u2068valid_from\u2069</code>",
"description": "Validates that <code>\u2068valid_to\u2069</code>, if given, is strictly later than \u2068valid_from\u2069.",
"possible_errors": [
"start_date_same_as_end_date"
]
}
]Old
[
{
"name": "Validate <code>\u2068valid_to\u2069</code> not before or equal to <code>\u2068valid_from\u2069</code>",
"description": "Validates that <code>\u2068valid_to\u2069</code>, if given, is strictly later than \u2068valid_from\u2069.",
"possible_errors": [
"start_date_same_as_end_date"
]
},
{
"name": "Validate each item represents a possible rate for the product",
"description": "Validate each item's rate specification, characteristic values, and scheme labels represent a rate defned on the product.",
"possible_errors": [
"characteristic_code_not_found",
"invalid_characteristic_value",
"invalid_profile_variant_for_specification",
"product_specification_not_found_for_product",
"rate_specification_not_found_for_product",
"shared_rate_not_found",
"shared_rate_not_found_for_product"
]
},
{
"name": "Validate that all required bespoke rates are present and no non-overridable rates are supplied",
"description": "Validates that bespoke rate schedules include all rate specifications marked as must-be-overridden and mandatory, and do not include any rate specifications marked as cannot-be-overridden.",
"possible_errors": [
"bespoke_rate_cannot_be_overridden",
"missing_required_bespoke_rate"
]
}
]Old
{
"x-validators": [
{
"name": "Validate product code exists",
"description": "Validate that the product code exists in Kraken.",
"possible_errors": [
"product_code_does_not_exist"
]
}
]
}Old
{
"x-validators": [
{
"name": "Validate bespoke rate items are unique",
"description": "Validate that no two bespoke rate items in a schedule share the same rate specification code, rate specification type, and variant profile.",
"possible_errors": [
"duplicate_bespoke_rate_items"
]
}
]
}New
{
"x-validators": [
{
"name": "Validate bespoke rates do not conflict",
"description": "Validate bespoke rates for the same target and rate do not conflict during the same period. The target of a bespoke rate is determined by the supply point identifier and product code.",
"possible_errors": [
"overlapping_bespoke_rate_schedules"
]
},
{
"name": "Validate bespoke rate schedules target consistently",
"description": "Validate that bespoke rate schedules either all target supply points via the supply_point_identifier field or none do.",
"possible_errors": [
"inconsistent_bespoke_rate_schedule_targeting"
]
},
{
"name": "Validate bespoke rate schedules are valid",
"description": "Validate that each schedule references an existing product, contains unique items, represents rates defined by the product specification, and satisfies the product's rate override strategies.",
"possible_errors": [
"bespoke_rate_cannot_be_overridden",
"characteristic_code_not_found",
"duplicate_bespoke_rate_items",
"invalid_characteristic_value",
"invalid_profile_variant_for_specification",
"missing_required_bespoke_rate",
"product_code_does_not_exist",
"product_specification_not_found_for_product",
"rate_specification_not_found_for_product",
"shared_rate_not_found",
"shared_rate_not_found_for_product"
]
}
]
}Old
{
"x-validators": [
{
"name": "Validate bespoke rates do not conflict",
"description": "Validate bespoke rates for the same target and rate do not conflict during the same period. The target of a bespoke rate is determined by the supply point identifier and product code.",
"possible_errors": [
"overlapping_bespoke_rate_schedules"
]
},
{
"name": "Validate bespoke rate schedules target consistently",
"description": "Validate that bespoke rate schedules either all target supply points via the supply_point_identifier field or none do.",
"possible_errors": [
"inconsistent_bespoke_rate_schedule_targeting"
]
}
]
}New
{
"x-enum-descriptions": {
"pendiente_de_activar_retencion_plan_ahora": "PENDIENTE DE ACTIVAR RETENCION PLAN AHORA"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"PENDIENTE DE ACTIVAR RETENCION PLAN AHORA": "PENDIENTE DE ACTIVAR RETENCION PLAN AHORA"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"ruleta_fidma_2026_solo_usar_en_feria": "Ruleta FIDMA 2026_solo usar en feria"
}
}Old
{
"x-enum-descriptions": {
"ruleta_fidma_2026": "Ruleta FIDMA 2026"
}
}New
{
"x-enum-descriptions": {
"Ruleta FIDMA 2026_solo usar en feria": "Ruleta FIDMA 2026_solo usar en feria"
}
}Old
{
"x-enum-descriptions": {
"Ruleta FIDMA 2026": "Ruleta FIDMA 2026"
}
}28 July 2026
New
{
"x-enum-descriptions": {
"ruleta_fidma_2026": "Ruleta FIDMA 2026"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Ruleta FIDMA 2026": "Ruleta FIDMA 2026"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"TRANCHE_TARGET_CONFIGURATION": "#/components/schemas/TrancheTargetConfiguration"
}New
[
{
"$ref": "#/components/schemas/BespokeRateConfiguration"
},
{
"$ref": "#/components/schemas/BillDueDate"
},
{
"$ref": "#/components/schemas/BillingDocumentIssuanceFrequencyTerm"
},
{
"$ref": "#/components/schemas/CharacteristicOverrideConfiguration"
},
{
"$ref": "#/components/schemas/CollateralRequired"
},
{
"$ref": "#/components/schemas/ContractMetaData"
},
{
"$ref": "#/components/schemas/ContractedVolumeConfiguration"
},
{
"$ref": "#/components/schemas/CorrectivePeriod"
},
{
"$ref": "#/components/schemas/DelayerDays"
},
{
"$ref": "#/components/schemas/GuaranteeOfOriginConfiguration"
},
{
"$ref": "#/components/schemas/LatePaymentFees"
},
{
"$ref": "#/components/schemas/MinimumContractLength"
},
{
"$ref": "#/components/schemas/PartnerCommission"
},
{
"$ref": "#/components/schemas/PaysByDirectDebitTerm"
},
{
"$ref": "#/components/schemas/ProductRateOverrideConfiguration"
},
{
"$ref": "#/components/schemas/PromotionAssignmentTerm"
},
{
"$ref": "#/components/schemas/RateGroupEligibilityConfiguration"
},
{
"$ref": "#/components/schemas/TrancheTargetResidualFee"
},
{
"$ref": "#/components/schemas/TaxAdjustmentConfiguration"
},
{
"$ref": "#/components/schemas/TerminationFee"
},
{
"$ref": "#/components/schemas/TrancheTargetConfiguration"
}
]Old
[
{
"$ref": "#/components/schemas/BespokeRateConfiguration"
},
{
"$ref": "#/components/schemas/BillDueDate"
},
{
"$ref": "#/components/schemas/BillingDocumentIssuanceFrequencyTerm"
},
{
"$ref": "#/components/schemas/CharacteristicOverrideConfiguration"
},
{
"$ref": "#/components/schemas/CollateralRequired"
},
{
"$ref": "#/components/schemas/ContractMetaData"
},
{
"$ref": "#/components/schemas/ContractedVolumeConfiguration"
},
{
"$ref": "#/components/schemas/CorrectivePeriod"
},
{
"$ref": "#/components/schemas/DelayerDays"
},
{
"$ref": "#/components/schemas/GuaranteeOfOriginConfiguration"
},
{
"$ref": "#/components/schemas/LatePaymentFees"
},
{
"$ref": "#/components/schemas/MinimumContractLength"
},
{
"$ref": "#/components/schemas/PartnerCommission"
},
{
"$ref": "#/components/schemas/PaysByDirectDebitTerm"
},
{
"$ref": "#/components/schemas/ProductRateOverrideConfiguration"
},
{
"$ref": "#/components/schemas/PromotionAssignmentTerm"
},
{
"$ref": "#/components/schemas/RateGroupEligibilityConfiguration"
},
{
"$ref": "#/components/schemas/TrancheTargetResidualFee"
},
{
"$ref": "#/components/schemas/TaxAdjustmentConfiguration"
},
{
"$ref": "#/components/schemas/TerminationFee"
}
]24 July 2026
No attributes to display
23 July 2026
New
{
"x-enum-descriptions": {
"entradas_fidma26": "Entradas FIDMA 2026"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Entradas FIDMA 2026": "Entradas FIDMA 2026"
}
}Old
{
"x-enum-descriptions": {}
}22 July 2026
New
{
"x-validators": [
{
"name": "Validate that each child has a unique combination of values for the <code>\u2068payment_date, payment_type\u2069</code> fields",
"description": "Validate that each child has a unique combination of values for the <code>\u2068payment_date, payment_type\u2069</code> fields.",
"possible_errors": [
"children_with_duplicate_values"
]
}
]
}Old
{
"x-validators": [
{
"name": "Validate that each child has unique values for the <code>\u2068payment_date\u2069</code> field",
"description": "Validate that each child has unique values for the <code>\u2068payment_date\u2069</code> field.",
"possible_errors": [
"children_with_duplicate_values"
]
}
]
}17 July 2026
No attributes to display
No attributes to display
No attributes to display
16 July 2026
No attributes to display
Old
{
"x-validators": [
{
"name": "Validate alternative phone number is not in kraken",
"description": "Validate the alternative phone number provided does not exist in the database.",
"possible_errors": [
"alternative_phone_numbers_already_exists"
]
}
]
}Old
{
"x-validators": [
{
"name": "Validate alternative phone number is not in kraken",
"description": "Validate the alternative phone number provided does not exist in the database.",
"possible_errors": [
"alternative_phone_numbers_already_exists"
]
}
]
}15 July 2026
New
{
"x-enum-descriptions": {
"FLAT": "contracts--terms--termination-fee-fee-type-flat"
}
}Old
{
"x-enum-descriptions": {
"FLAT": "Flat"
}
}New
{
"extra": "#/components/schemas/ExtraCharacteristic"
}New
[
{
"$ref": "#/components/schemas/VersionCharacteristic"
},
{
"$ref": "#/components/schemas/GarantiaOrigenCharacteristic"
},
{
"$ref": "#/components/schemas/FeeCarteraCharacteristic"
},
{
"$ref": "#/components/schemas/ProductoCharacteristic"
},
{
"$ref": "#/components/schemas/ExtraCharacteristic"
},
{
"$ref": "#/components/schemas/SalesChannelCharacteristic"
}
]Old
[
{
"$ref": "#/components/schemas/VersionCharacteristic"
},
{
"$ref": "#/components/schemas/ProductoCharacteristic"
},
{
"$ref": "#/components/schemas/GarantiaOrigenCharacteristic"
},
{
"$ref": "#/components/schemas/FeeCarteraCharacteristic"
},
{
"$ref": "#/components/schemas/SalesChannelCharacteristic"
}
]New
{
"x-enum-descriptions": {
"SV": "(SV) Severe vulnerable",
"VU": "(VU) Vulnerable",
"ESV": "(ESV) Extremely severe vulnerable"
}
}Old
{
"x-enum-descriptions": {
"SV": "Severe vulnerable",
"VU": "Vulnerable",
"ESV": "Extremely severe vulnerable"
}
}New
{
"x-enum-descriptions": {
"01": "(01) Eligible vulnerable consumer",
"02": "(02) Eligible severe vulnerable consumer",
"03": "(03) Not eligible vulnerable consumer",
"04": "(04) Calculation impossibility",
"05": "(05) Eligible extreme vulnerable consumer"
}
}Old
{
"x-enum-descriptions": {
"01": "Eligible vulnerable consumer",
"02": "Eligible severe vulnerable consumer",
"03": "Not eligible vulnerable consumer",
"04": "Calculation impossibility",
"05": "Eligible extreme vulnerable consumer"
}
}New
[
{
"name": "Validate <code>\u2068end_date\u2069</code> not before <code>\u2068start_date\u2069</code>",
"description": "Validates that <code>\u2068end_date\u2069</code>, if given, is on or later than <code>\u2068start_date\u2069</code>.",
"possible_errors": [
"start_date_later_than_end_date"
]
},
{
"name": "Validate fixed payment schedule has amount",
"description": "Validates that a fixed payment schedule has an non zero amount provided in the payload. A fixed schedule is defined as a payment schedule with a trigger that is not type BILL.",
"possible_errors": [
"zero_payment_schedule_amount"
]
},
{
"name": "Validate regular payment schedule frequency provided",
"description": "Validates that a fixed regular payment schedule has a frequency provided in the payload.",
"possible_errors": [
"fixed_payment_schedule_missing_frequency"
]
},
{
"name": "Validate payment schedule balance threshold provided",
"description": "Validates that a payment schedule with a balance trigger has a balance threshold provided in the payload. This balance threshold is the amount the ledger balance must drop below to trigger a payment.",
"possible_errors": [
"balance_triggered_schedule_missing_threshold"
]
},
{
"name": "Validate debt repayment end date provided",
"description": "Validates that a debt repayment end date is provided in the payload if a debt repayment element is provided.",
"possible_errors": [
"debt_repayment_missing_end_date"
]
},
{
"name": "Validate debt repayment end date is not later than schedule end date",
"description": "Validates that a debt repayment end date is not later than the payment schedule end date if both are provided.",
"possible_errors": [
"debt_repayment_end_date_after_schedule_end_date"
]
},
{
"name": "Validate exempt from payment adequacy is applied only to regular schedule",
"description": "Validates that only a regular payment schedule is marked as exempted from payment adequacy, so as to create a fixed regular payment schedule.",
"possible_errors": [
"invalid_payment_schedule_to_exempt_from_payment_adequacy"
]
},
{
"name": "Validate fixed payment schedule has payment day",
"description": "Validates that a fixed payment schedule has a day of month in the payload. A fixed schedule is defined as a payment schedule with a trigger of type REGULAR.",
"possible_errors": [
"fixed_payment_schedule_missing_day_of_month"
]
},
{
"name": "Validate instalments is provided if trigger is PLAN",
"description": "Validate that the instalment field is not empty if payment schedule trigger is PLAN.",
"possible_errors": [
"payment_instalments_not_provided"
]
},
{
"name": "Validate instalment payment amounts sum to total amount",
"description": "Validate instalment payment amounts sum to total amount given.",
"possible_errors": [
"payment_instalments_do_not_sum_to_total"
]
},
{
"name": "Validate instalment payment date is within payment schedule active period",
"description": "Validate instalment payment date is within the period between start date and end date provided.",
"possible_errors": [
"payment_instalments_date_outside_of_payment_schedule_active_period"
]
},
{
"name": "Validate that the delayer days is set if delayer strategy is set",
"description": "Validate that the delayer days is set if delayer strategy is set",
"possible_errors": [
"payment_schedule_delay_must_have_bill_trigger",
"payment_schedule_delay_strategy_missing_delay_days"
]
},
{
"name": "Validate that the payment amount for fixed payment schedules is within the minor currency unit range of \u20680\u2069 - \u2068upper_bound\u2069",
"description": "Validate that the payment amount for any fixed payment schedule is within the major currency unit range of \u2068lower_limit\u2069 - \u2068UNLIMITED\u2069.",
"possible_errors": [
"fixed_payment_schedule_amount_out_of_range"
]
},
{
"name": "Standalone payment request method code is unexpected",
"description": "Validates that standalone_payment_request_method_code is only provided for MANUAL payment schedules.",
"possible_errors": [
"standalone_payment_request_method_code_unexpected"
]
},
{
"name": "Standalone payment request method code is valid",
"description": "Validates that standalone_payment_request_method_code matches a registered method.",
"possible_errors": [
"standalone_payment_request_method_code_invalid"
]
}
]Old
[
{
"name": "Validate <code>\u2068end_date\u2069</code> not before <code>\u2068start_date\u2069</code>",
"description": "Validates that <code>\u2068end_date\u2069</code>, if given, is on or later than <code>\u2068start_date\u2069</code>.",
"possible_errors": [
"start_date_later_than_end_date"
]
},
{
"name": "Validate fixed payment schedule has amount",
"description": "Validates that a fixed payment schedule has an non zero amount provided in the payload. A fixed schedule is defined as a payment schedule with a trigger that is not type BILL.",
"possible_errors": [
"zero_payment_schedule_amount"
]
},
{
"name": "Validate regular payment schedule frequency provided",
"description": "Validates that a fixed regular payment schedule has a frequency provided in the payload.",
"possible_errors": [
"fixed_payment_schedule_missing_frequency"
]
},
{
"name": "Validate payment schedule balance threshold provided",
"description": "Validates that a payment schedule with a balance trigger has a balance threshold provided in the payload. This balance threshold is the amount the ledger balance must drop below to trigger a payment.",
"possible_errors": [
"balance_triggered_schedule_missing_threshold"
]
},
{
"name": "Validate debt repayment end date provided",
"description": "Validates that a debt repayment end date is provided in the payload if a debt repayment element is provided.",
"possible_errors": [
"debt_repayment_missing_end_date"
]
},
{
"name": "Validate debt repayment end date is not later than schedule end date",
"description": "Validates that a debt repayment end date is not later than the payment schedule end date if both are provided.",
"possible_errors": [
"debt_repayment_end_date_after_schedule_end_date"
]
},
{
"name": "Validate exempt from payment adequacy is applied only to regular schedule",
"description": "Validates that only a regular payment schedule is marked as exempted from payment adequacy, so as to create a fixed regular payment schedule.",
"possible_errors": [
"invalid_payment_schedule_to_exempt_from_payment_adequacy"
]
},
{
"name": "Validate fixed payment schedule has payment day",
"description": "Validates that a fixed payment schedule has a day of month in the payload. A fixed schedule is defined as a payment schedule with a trigger of type REGULAR.",
"possible_errors": [
"fixed_payment_schedule_missing_day_of_month"
]
},
{
"name": "Validate instalments is provided if trigger is PLAN",
"description": "Validate that the instalment field is not empty if payment schedule trigger is PLAN.",
"possible_errors": [
"payment_instalments_not_provided"
]
},
{
"name": "Validate instalment payment amounts sum to total amount",
"description": "Validate instalment payment amounts sum to total amount given.",
"possible_errors": [
"payment_instalments_do_not_sum_to_total"
]
},
{
"name": "Validate instalment payment date is within payment schedule active period",
"description": "Validate instalment payment date is within the period between start date and end date provided.",
"possible_errors": [
"payment_instalments_date_outside_of_payment_schedule_active_period"
]
},
{
"name": "Validate that the delayer days is set if delayer strategy is set",
"description": "Validate that the delayer days is set if delayer strategy is set",
"possible_errors": [
"payment_schedule_delay_must_have_bill_trigger",
"payment_schedule_delay_strategy_missing_delay_days"
]
},
{
"name": "Validate that the payment amount for fixed payment schedules is within the minor currency unit range of \u20680\u2069 - \u2068upper_bound\u2069",
"description": "Validate that the payment amount for any fixed payment schedule is within the major currency unit range of \u2068lower_limit\u2069 - \u2068UNLIMITED\u2069.",
"possible_errors": [
"fixed_payment_schedule_amount_out_of_range"
]
}
]14 July 2026
New
[
{
"name": "data-import--validation--shared-rate-exists-for-product",
"description": "Validate that the shared rate code provided matches the shared rate for the product with the provided product code.",
"possible_errors": [
"product_specification_not_found_for_product",
"time_series_not_found_for_product"
]
}
]Old
[
{
"name": "data-import--validation--time-series-exists-for-product",
"description": "Validate that the time series code provided matches the time series for the product with the provided product code.",
"possible_errors": [
"product_specification_not_found_for_product",
"time_series_not_found_for_product"
]
}
]9 July 2026
No attributes to display
New
{
"x-enum-descriptions": {
"2014": "Derechos de alta por reposici\u00f3n (no repercutible a cliente)",
"2015": "Derechos de enganche por reposici\u00f3n (no repercutible a cliente)",
"2016": "Derechos de reconexi\u00f3n instalaciones por reposici\u00f3n (no repercutible a cliente)",
"2017": "Derechos de verificaci\u00f3n instalaciones por reposici\u00f3n (no repercutible a cliente)"
}
}Old
{
"x-enum-descriptions": {}
}New
[
{
"name": "Validate account type is valid",
"description": "Validate that only one account type is specified in the payload.",
"possible_errors": [
"multiple_account_types_selected"
]
},
{
"name": "Derive occupier billing address from supply address",
"description": "When an occupier account has no explicit billing address and exactly one supply address is provided, copy the supply address into the billing address fields.",
"possible_errors": []
},
{
"name": "Validate billing address fields",
"description": "If a legacy billing address is provided, validate that it is in the correct format.",
"possible_errors": [
"invalid_address"
]
},
{
"name": "Validate customer family name",
"description": "Validate the family name is provided for all customers on a domestic account. For Business accounts, set the family name to 'Business' if it is not provided.",
"possible_errors": [
"customer_family_name_required"
]
},
{
"name": "Validate metadata",
"description": "Validate that metadata, which is a list of key value pairs, does not contain duplicate keys.",
"possible_errors": [
"metadata_has_duplicate_keys"
]
},
{
"name": "Validate unique property external identifiers",
"description": "Ensures that <code>property_external_identifier</code> is not repeated across <code>supply_addresses</code> and <code>properties</code>.",
"possible_errors": [
"duplicate_property_external_identifiers"
]
},
{
"name": "Validate managed account type is allowed",
"description": "Validate that this instance of Kraken allows managed account types.",
"possible_errors": [
"managed_accounts_are_not_allowed"
]
},
{
"name": "Validate only portfolio lead has portfolio setting",
"description": "Validates that if portfolio settings are provided, then the account is marked as the portfolio lead.",
"possible_errors": [
"portfolio_settings_included_when_not_lead"
]
},
{
"name": "Validate business type and company number not provided for domestic accounts",
"description": "Validate that neither a business type or company number are provided for domestic accounts.",
"possible_errors": [
"business_fields_provided_for_domestic_accounts"
]
},
{
"name": "Validate no customers for unknown occupier",
"description": "Validate that no customers are provided for an unknown occupier.",
"possible_errors": [
"customer_with_unknown_occupier"
]
},
{
"name": "Validate that a customer given name is provided for business accounts",
"description": "Validate that a given name is provided for all customers on a business account. Note that this validation only applies if Kraken is configured to send registration flows for this import supplier.",
"possible_errors": [
"customer_given_name_required"
]
},
{
"name": "Validate portfolio reference provided correctly",
"description": "Validate that a portfolio reference is provided if portfolio settings have been provided and that a portfolio reference is not provided if the import supplier is set to create new portfolios.",
"possible_errors": [
"portfolio_references_missing",
"portfolio_references_provided"
]
},
{
"name": "Validate billing address style",
"description": "Validate that a legacy billing address (<code>billing_address1</code> etc.) and new-style billing address (<code>billing_address</code> object) are not both provided.",
"possible_errors": [
"billing_address_new_style_and_legacy"
]
},
{
"name": "Validate agreements are consecutive per supply point",
"description": "Validate that the agreements provided in the payload are consecutive per supply point i.e. there are no gaps or overlaps. The exception to this is for agreements provided before the current supply period for the supply point. Agreements provided before the <code>supply_start_date</code> are allowed gaps since they represent historic periods of supply and cannot be used for billing in Kraken.",
"possible_errors": [
"gaps_or_overlaps_in_agreement_dates"
]
},
{
"name": "Validate supply charge line items covered by a single agreement",
"description": "Validate each supply charge has a single agreement with matching product code that covers the period defined by it's line items minimum <code>start_date</code> to maximum <code>end_date</code>.",
"possible_errors": [
"supply_charge_line_items_not_covered_by_single_agreement"
]
},
{
"name": "Validate that Kraken can calculate when to start billing the account",
"description": "Validate that Kraken can calculate when to start billing the account. This is determined based on the existence of last billed to date, last statement closing date, and agreements.",
"possible_errors": [
"cannot_determine_responsible_for_billing_from_date"
]
},
{
"name": "Validate historical statement period end must not be in the future",
"description": "Ensures that the historical statement period end date (last_statement_closing_date or latest transaction_date) is not set in the future.",
"possible_errors": [
"historical_statement_period_end_in_future"
]
},
{
"name": "Validate that terms with supply type matches a supply point supply type",
"description": "Validate that for terms containing a <code>supply_type</code> field that there is a supply point in the payload with a matching <code>supply_type</code>.",
"possible_errors": [
"term_supply_type_mismatch"
]
},
{
"name": "Validate that supply addresses and supply points are provided if account contracts are provided",
"description": "Validate that if <code>account_contracts</code> have been provided that a supply address with supply points has been provided under <code>supply_addresses</code>",
"possible_errors": [
"account_contracts_without_supply_points"
]
},
{
"name": "Validate historical statement billing document identifier presence",
"description": "Ensure that billing document identifiers are only provided for historical statement transactions and only when the relevant feature flag is enabled.",
"possible_errors": [
"historical_statement_billing_document_identifier_missing",
"historical_statement_billing_document_identifier_not_allowed_when_feature_flag_disabled"
]
},
{
"name": "Validate current statement transactions do not provide <code>billing_document_identifier</code>",
"description": "Validate that none of the current statement transactions include a <code>billing_document_identifier</code>, as this field is only applicable to historical statement transactions.",
"possible_errors": [
"billing_document_identifier_not_allowed_for_current_statement_transactions"
]
},
{
"name": "Validate historical statement transaction billing document identifier",
"description": "Ensure that the billing document identifier is the same for all historical statement transactions.",
"possible_errors": [
"historical_statement_billing_document_identifier_mismatch"
]
},
{
"name": "Validate that contract terms' product codes are part of supply agreements",
"description": "Ensure that any contract terms with product references have corresponding products in supply addresses.",
"possible_errors": [
"contract_term_product_code_not_in_agreements"
]
},
{
"name": "Validate that business is provided if enforcing business contracts",
"description": "Validate that the business field is provided if <code>enforce_business_contracts_exist</code> is set to True on the import supplier configuration.",
"possible_errors": [
"business_field_required"
]
},
{
"name": "Validate agreement business contract identifier is declared",
"description": "Validates that an agreement's <code>business_contract_identifier</code>, if provided, is one of the account's declared <code>business_contract_identifiers</code>.",
"possible_errors": [
"agreement_business_contract_identifier_not_declared"
]
},
{
"name": "Validate that the sum of ledger balances equals the transfer balance",
"description": "Validate that the sum of all <code>ledger_balance</code> provided for each ledger in <code>ledgers</code> equals the account-level <code>transfer_balance</code>.",
"possible_errors": [
"ledger_balances_not_equal_to_transfer_balance"
]
},
{
"name": "Validate business user info against customer info",
"description": "Validates that business user information matches the corresponding customer information for basic fields.",
"possible_errors": [
"customer_details_and_user_details_both_provided"
]
},
{
"name": "Validate payment preference <code>ledger_identifier</code>",
"description": "Ensure that the <code>ledger_identifier</code> provided has an equivalent <code>ledger</code> object with the same <code>ledger_identifier</code> .",
"possible_errors": [
"invalid_payment_preference_ledger_identifier"
]
},
{
"name": "Validate that referenced ledgers are unique in payment preferences",
"description": "Ensure that each ledger is referenced in at most one payment preference.",
"possible_errors": [
"duplicate_ledger_in_payment_preferences"
]
},
{
"name": "Validate that valid instruction_identifier provided for <code>ACTIVE_NEW</code> payment preference",
"description": "Ensure that <code>ACTIVE_NEW</code> payment preference has instruction_identifier from </code>payment_instructions</code> object.",
"possible_errors": [
"active_new_payment_preference_invalid_instruction_identifier"
]
},
{
"name": "Validate that the transactions for a voucher do not exceed its value",
"description": "Validate that the sum of all transaction values for a voucher is not greater than the value of the voucher.",
"possible_errors": [
"voucher_transactions_sum_greater_than_voucher_value"
]
},
{
"name": "Validate that each voucher charge transaction id has a matching transaction id within a transaction of type CHARGE",
"description": "Validate that each <code>voucher</code> <code>charge_transaction_id</code> has a matching <code>transaction_id</code> within a transaction of <code>type</code> CHARGE in <code>current_statement_transactions</code>, <code>historical_statement_transactions</code> or <code>historical_billing_documents</code>.",
"possible_errors": [
"voucher_charge_transaction_id_not_found"
]
},
{
"name": "Validate that each voucher redemption credit transaction id has a matching transaction id within a transaction of type CREDIT",
"description": "Validate that every <code>credit_transaction_id</code> in all <code>voucher_redemptions</code> in every <code>voucher</code> has a matching <code>transaction_id</code> within a transaction of <code>type</code> CREDIT in <code>current_statement_transactions</code>, <code>historical_statement_transactions</code> or <code>historical_billing_documents</code>.",
"possible_errors": [
"voucher_redemption_credit_transaction_id_not_found"
]
},
{
"name": "Validate parent property references exist",
"description": "Validates that all <code>parent_property_reference</code> values in <code>supply_addresses</code> and <code>properties</code> correspond to a <code>property_external_identifier</code> in the payload. This ensures the property hierarchy is valid.",
"possible_errors": [
"parent_property_reference_not_found"
]
},
{
"name": "Validate that a portfolio lead account has no supply address since it makes no sense for it to have one",
"description": "Validate that a portfolio lead account has no supply address.",
"possible_errors": [
"portfolio_lead_has_a_supply_address"
]
},
{
"name": "Validate that a system account has no supply address",
"description": "Validate that a system account has no supply address",
"possible_errors": [
"system_account_has_a_supply_address"
]
},
{
"name": "Validate exactly one property for service agreement property association",
"description": "Validates that exactly one supply address is provided when there are service agreements with products that require property association.",
"possible_errors": [
"service_agreement_requires_supply_address"
]
},
{
"name": "Validate ledger identifiers are known",
"description": "Validate ledger identifiers are among supply point identifiers.",
"possible_errors": [
"unknown_ledger_identifiers"
]
},
{
"name": "Validate identifiers are unique in ledgers",
"description": "Validate identifier is not declared twice in ledgers.",
"possible_errors": [
"duplicate_identifiers_entries_found"
]
},
{
"name": "Validate agreements cover last statement closing date",
"description": "Validate that there is an agreement for each supply point covering each ledger's <code>last_statement_closing_date</code>.",
"possible_errors": [
"no_agreement_covering_last_statement_closing_date"
]
},
{
"name": "Validate no unbilled period on former supply addresses",
"description": "Validate that if a customer is no longer at the given supply address they have been fully billed. This check is performed if we are importing supply address history.",
"possible_errors": [
"unbilled_former_supply_address"
]
},
{
"name": "Validate company number provided for business account",
"description": "Validate that a business account has company number provided.",
"possible_errors": [
"company_number_required_for_business_account"
]
}
]Old
[
{
"name": "Validate account type is valid",
"description": "Validate that only one account type is specified in the payload.",
"possible_errors": [
"multiple_account_types_selected"
]
},
{
"name": "Validate billing address fields",
"description": "If a legacy billing address is provided, validate that it is in the correct format.",
"possible_errors": [
"invalid_address"
]
},
{
"name": "Validate customer family name",
"description": "Validate the family name is provided for all customers on a domestic account. For Business accounts, set the family name to 'Business' if it is not provided.",
"possible_errors": [
"customer_family_name_required"
]
},
{
"name": "Validate metadata",
"description": "Validate that metadata, which is a list of key value pairs, does not contain duplicate keys.",
"possible_errors": [
"metadata_has_duplicate_keys"
]
},
{
"name": "Validate unique property external identifiers",
"description": "Ensures that <code>property_external_identifier</code> is not repeated across <code>supply_addresses</code> and <code>properties</code>.",
"possible_errors": [
"duplicate_property_external_identifiers"
]
},
{
"name": "Validate managed account type is allowed",
"description": "Validate that this instance of Kraken allows managed account types.",
"possible_errors": [
"managed_accounts_are_not_allowed"
]
},
{
"name": "Validate only portfolio lead has portfolio setting",
"description": "Validates that if portfolio settings are provided, then the account is marked as the portfolio lead.",
"possible_errors": [
"portfolio_settings_included_when_not_lead"
]
},
{
"name": "Validate business type and company number not provided for domestic accounts",
"description": "Validate that neither a business type or company number are provided for domestic accounts.",
"possible_errors": [
"business_fields_provided_for_domestic_accounts"
]
},
{
"name": "Validate no customers for unknown occupier",
"description": "Validate that no customers are provided for an unknown occupier.",
"possible_errors": [
"customer_with_unknown_occupier"
]
},
{
"name": "Validate that a customer given name is provided for business accounts",
"description": "Validate that a given name is provided for all customers on a business account. Note that this validation only applies if Kraken is configured to send registration flows for this import supplier.",
"possible_errors": [
"customer_given_name_required"
]
},
{
"name": "Validate portfolio reference provided correctly",
"description": "Validate that a portfolio reference is provided if portfolio settings have been provided and that a portfolio reference is not provided if the import supplier is set to create new portfolios.",
"possible_errors": [
"portfolio_references_missing",
"portfolio_references_provided"
]
},
{
"name": "Validate billing address style",
"description": "Validate that a legacy billing address (<code>billing_address1</code> etc.) and new-style billing address (<code>billing_address</code> object) are not both provided.",
"possible_errors": [
"billing_address_new_style_and_legacy"
]
},
{
"name": "Validate agreements are consecutive per supply point",
"description": "Validate that the agreements provided in the payload are consecutive per supply point i.e. there are no gaps or overlaps. The exception to this is for agreements provided before the current supply period for the supply point. Agreements provided before the <code>supply_start_date</code> are allowed gaps since they represent historic periods of supply and cannot be used for billing in Kraken.",
"possible_errors": [
"gaps_or_overlaps_in_agreement_dates"
]
},
{
"name": "Validate supply charge line items covered by a single agreement",
"description": "Validate each supply charge has a single agreement with matching product code that covers the period defined by it's line items minimum <code>start_date</code> to maximum <code>end_date</code>.",
"possible_errors": [
"supply_charge_line_items_not_covered_by_single_agreement"
]
},
{
"name": "Validate that Kraken can calculate when to start billing the account",
"description": "Validate that Kraken can calculate when to start billing the account. This is determined based on the existence of last billed to date, last statement closing date, and agreements.",
"possible_errors": [
"cannot_determine_responsible_for_billing_from_date"
]
},
{
"name": "Validate historical statement period end must not be in the future",
"description": "Ensures that the historical statement period end date (last_statement_closing_date or latest transaction_date) is not set in the future.",
"possible_errors": [
"historical_statement_period_end_in_future"
]
},
{
"name": "Validate that terms with supply type matches a supply point supply type",
"description": "Validate that for terms containing a <code>supply_type</code> field that there is a supply point in the payload with a matching <code>supply_type</code>.",
"possible_errors": [
"term_supply_type_mismatch"
]
},
{
"name": "Validate that supply addresses and supply points are provided if account contracts are provided",
"description": "Validate that if <code>account_contracts</code> have been provided that a supply address with supply points has been provided under <code>supply_addresses</code>",
"possible_errors": [
"account_contracts_without_supply_points"
]
},
{
"name": "Validate historical statement billing document identifier presence",
"description": "Ensure that billing document identifiers are only provided for historical statement transactions and only when the relevant feature flag is enabled.",
"possible_errors": [
"historical_statement_billing_document_identifier_missing",
"historical_statement_billing_document_identifier_not_allowed_when_feature_flag_disabled"
]
},
{
"name": "Validate current statement transactions do not provide <code>billing_document_identifier</code>",
"description": "Validate that none of the current statement transactions include a <code>billing_document_identifier</code>, as this field is only applicable to historical statement transactions.",
"possible_errors": [
"billing_document_identifier_not_allowed_for_current_statement_transactions"
]
},
{
"name": "Validate historical statement transaction billing document identifier",
"description": "Ensure that the billing document identifier is the same for all historical statement transactions.",
"possible_errors": [
"historical_statement_billing_document_identifier_mismatch"
]
},
{
"name": "Validate that contract terms' product codes are part of supply agreements",
"description": "Ensure that any contract terms with product references have corresponding products in supply addresses.",
"possible_errors": [
"contract_term_product_code_not_in_agreements"
]
},
{
"name": "Validate that business is provided if enforcing business contracts",
"description": "Validate that the business field is provided if <code>enforce_business_contracts_exist</code> is set to True on the import supplier configuration.",
"possible_errors": [
"business_field_required"
]
},
{
"name": "Validate agreement business contract identifier is declared",
"description": "Validates that an agreement's <code>business_contract_identifier</code>, if provided, is one of the account's declared <code>business_contract_identifiers</code>.",
"possible_errors": [
"agreement_business_contract_identifier_not_declared"
]
},
{
"name": "Validate that the sum of ledger balances equals the transfer balance",
"description": "Validate that the sum of all <code>ledger_balance</code> provided for each ledger in <code>ledgers</code> equals the account-level <code>transfer_balance</code>.",
"possible_errors": [
"ledger_balances_not_equal_to_transfer_balance"
]
},
{
"name": "Validate business user info against customer info",
"description": "Validates that business user information matches the corresponding customer information for basic fields.",
"possible_errors": [
"customer_details_and_user_details_both_provided"
]
},
{
"name": "Validate payment preference <code>ledger_identifier</code>",
"description": "Ensure that the <code>ledger_identifier</code> provided has an equivalent <code>ledger</code> object with the same <code>ledger_identifier</code> .",
"possible_errors": [
"invalid_payment_preference_ledger_identifier"
]
},
{
"name": "Validate that referenced ledgers are unique in payment preferences",
"description": "Ensure that each ledger is referenced in at most one payment preference.",
"possible_errors": [
"duplicate_ledger_in_payment_preferences"
]
},
{
"name": "Validate that valid instruction_identifier provided for <code>ACTIVE_NEW</code> payment preference",
"description": "Ensure that <code>ACTIVE_NEW</code> payment preference has instruction_identifier from </code>payment_instructions</code> object.",
"possible_errors": [
"active_new_payment_preference_invalid_instruction_identifier"
]
},
{
"name": "Validate that the transactions for a voucher do not exceed its value",
"description": "Validate that the sum of all transaction values for a voucher is not greater than the value of the voucher.",
"possible_errors": [
"voucher_transactions_sum_greater_than_voucher_value"
]
},
{
"name": "Validate that each voucher charge transaction id has a matching transaction id within a transaction of type CHARGE",
"description": "Validate that each <code>voucher</code> <code>charge_transaction_id</code> has a matching <code>transaction_id</code> within a transaction of <code>type</code> CHARGE in <code>current_statement_transactions</code>, <code>historical_statement_transactions</code> or <code>historical_billing_documents</code>.",
"possible_errors": [
"voucher_charge_transaction_id_not_found"
]
},
{
"name": "Validate that each voucher redemption credit transaction id has a matching transaction id within a transaction of type CREDIT",
"description": "Validate that every <code>credit_transaction_id</code> in all <code>voucher_redemptions</code> in every <code>voucher</code> has a matching <code>transaction_id</code> within a transaction of <code>type</code> CREDIT in <code>current_statement_transactions</code>, <code>historical_statement_transactions</code> or <code>historical_billing_documents</code>.",
"possible_errors": [
"voucher_redemption_credit_transaction_id_not_found"
]
},
{
"name": "Validate parent property references exist",
"description": "Validates that all <code>parent_property_reference</code> values in <code>supply_addresses</code> and <code>properties</code> correspond to a <code>property_external_identifier</code> in the payload. This ensures the property hierarchy is valid.",
"possible_errors": [
"parent_property_reference_not_found"
]
},
{
"name": "Validate that a portfolio lead account has no supply address since it makes no sense for it to have one",
"description": "Validate that a portfolio lead account has no supply address.",
"possible_errors": [
"portfolio_lead_has_a_supply_address"
]
},
{
"name": "Validate that a system account has no supply address",
"description": "Validate that a system account has no supply address",
"possible_errors": [
"system_account_has_a_supply_address"
]
},
{
"name": "Validate exactly one property for service agreement property association",
"description": "Validates that exactly one supply address is provided when there are service agreements with products that require property association.",
"possible_errors": [
"service_agreement_requires_supply_address"
]
},
{
"name": "Validate ledger identifiers are known",
"description": "Validate ledger identifiers are among supply point identifiers.",
"possible_errors": [
"unknown_ledger_identifiers"
]
},
{
"name": "Validate identifiers are unique in ledgers",
"description": "Validate identifier is not declared twice in ledgers.",
"possible_errors": [
"duplicate_identifiers_entries_found"
]
},
{
"name": "Validate agreements cover last statement closing date",
"description": "Validate that there is an agreement for each supply point covering each ledger's <code>last_statement_closing_date</code>.",
"possible_errors": [
"no_agreement_covering_last_statement_closing_date"
]
},
{
"name": "Validate no unbilled period on former supply addresses",
"description": "Validate that if a customer is no longer at the given supply address they have been fully billed. This check is performed if we are importing supply address history.",
"possible_errors": [
"unbilled_former_supply_address"
]
},
{
"name": "Validate company number provided for business account",
"description": "Validate that a business account has company number provided.",
"possible_errors": [
"company_number_required_for_business_account"
]
}
]8 July 2026
New
{
"x-validators": [
{
"name": "Validate bespoke rates do not conflict",
"description": "Validate bespoke rates for the same target and rate do not conflict during the same period. The target of a bespoke rate is determined by the supply point identifier and product code.",
"possible_errors": [
"overlapping_bespoke_rate_schedules"
]
},
{
"name": "Validate bespoke rate schedules target consistently",
"description": "Validate that bespoke rate schedules either all target supply points via the supply_point_identifier field or none do.",
"possible_errors": [
"inconsistent_bespoke_rate_schedule_targeting"
]
}
]
}Old
{
"x-validators": [
{
"name": "Validate schedules do not overlap",
"description": "Validate bespoke rate schedules for the same target do not overlap. The supply point identifier will be used as the target if provided, falling back to the product code.",
"possible_errors": [
"overlapping_bespoke_rate_schedules"
]
},
{
"name": "Validate bespoke rate schedules target consistently",
"description": "Validate that bespoke rate schedules either all target supply points via the supply_point_identifier field or none do.",
"possible_errors": [
"inconsistent_bespoke_rate_schedule_targeting"
]
}
]
}7 July 2026
New
[
{
"name": "Validate <code>\u2068valid_to\u2069</code> not before or equal to <code>\u2068valid_from\u2069</code>",
"description": "Validates that <code>\u2068valid_to\u2069</code>, if given, is strictly later than \u2068valid_from\u2069.",
"possible_errors": [
"start_date_same_as_end_date"
]
},
{
"name": "Validate each item represents a possible rate for the product",
"description": "Validate each item's rate specification, characteristic values, and scheme labels represent a rate defned on the product.",
"possible_errors": [
"characteristic_code_not_found",
"invalid_characteristic_value",
"invalid_profile_variant_for_specification",
"product_specification_not_found_for_product",
"rate_specification_not_found_for_product",
"shared_rate_not_found",
"shared_rate_not_found_for_product"
]
},
{
"name": "Validate that all required bespoke rates are present and no non-overridable rates are supplied",
"description": "Validates that bespoke rate schedules include all rate specifications marked as must-be-overridden and mandatory, and do not include any rate specifications marked as cannot-be-overridden.",
"possible_errors": [
"bespoke_rate_cannot_be_overridden",
"missing_required_bespoke_rate"
]
}
]Old
[
{
"name": "Validate <code>\u2068valid_to\u2069</code> not before <code>\u2068valid_from\u2069</code>",
"description": "Validates that <code>\u2068valid_to\u2069</code>, if given, is on or later than <code>\u2068valid_from\u2069</code>.",
"possible_errors": [
"start_date_later_than_end_date"
]
},
{
"name": "Validate each item represents a possible rate for the product",
"description": "Validate each item's rate specification, characteristic values, and scheme labels represent a rate defned on the product.",
"possible_errors": [
"characteristic_code_not_found",
"invalid_characteristic_value",
"invalid_profile_variant_for_specification",
"product_specification_not_found_for_product",
"rate_specification_not_found_for_product",
"shared_rate_not_found",
"shared_rate_not_found_for_product"
]
},
{
"name": "Validate that all required bespoke rates are present and no non-overridable rates are supplied",
"description": "Validates that bespoke rate schedules include all rate specifications marked as must-be-overridden and mandatory, and do not include any rate specifications marked as cannot-be-overridden.",
"possible_errors": [
"bespoke_rate_cannot_be_overridden",
"missing_required_bespoke_rate"
]
}
]New
{
"x-enum-descriptions": {
"debt_pause_recovery": "Deuda - Pausar Reclamacion"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Deuda - Pausar Reclamacion": "Deuda - Pausar Reclamacion"
}
}Old
{
"x-enum-descriptions": {}
}6 July 2026
No attributes to display
3 July 2026
New
{
"items": {
"x-enum-descriptions": {
"KRAKENFLOWS_COLLECTIONS": "KRAKENFLOWS_COLLECTIONS"
}
}
}Old
{
"items": {
"x-enum-descriptions": {}
}
}New
{
"items": {
"x-enum-descriptions": {
"KRAKENFLOWS_COLLECTIONS": "KRAKENFLOWS_COLLECTIONS"
}
}
}Old
{
"items": {
"x-enum-descriptions": {}
}
}New
{
"items": {
"x-enum-descriptions": {
"KRAKENFLOWS_COLLECTIONS": "KRAKENFLOWS_COLLECTIONS"
}
}
}Old
{
"items": {
"x-enum-descriptions": {}
}
}2 July 2026
New
{
"PARTNER_COMMISSION": "#/components/schemas/PartnerCommission"
}New
[
{
"$ref": "#/components/schemas/BespokeRateConfiguration"
},
{
"$ref": "#/components/schemas/BillDueDate"
},
{
"$ref": "#/components/schemas/BillingDocumentIssuanceFrequencyTerm"
},
{
"$ref": "#/components/schemas/CharacteristicOverrideConfiguration"
},
{
"$ref": "#/components/schemas/CollateralRequired"
},
{
"$ref": "#/components/schemas/ContractMetaData"
},
{
"$ref": "#/components/schemas/ContractedVolumeConfiguration"
},
{
"$ref": "#/components/schemas/CorrectivePeriod"
},
{
"$ref": "#/components/schemas/DelayerDays"
},
{
"$ref": "#/components/schemas/GuaranteeOfOriginConfiguration"
},
{
"$ref": "#/components/schemas/LatePaymentFees"
},
{
"$ref": "#/components/schemas/MinimumContractLength"
},
{
"$ref": "#/components/schemas/PartnerCommission"
},
{
"$ref": "#/components/schemas/PaysByDirectDebitTerm"
},
{
"$ref": "#/components/schemas/ProductRateOverrideConfiguration"
},
{
"$ref": "#/components/schemas/PromotionAssignmentTerm"
},
{
"$ref": "#/components/schemas/RateGroupEligibilityConfiguration"
},
{
"$ref": "#/components/schemas/TrancheTargetResidualFee"
},
{
"$ref": "#/components/schemas/TaxAdjustmentConfiguration"
},
{
"$ref": "#/components/schemas/TerminationFee"
}
]Old
[
{
"$ref": "#/components/schemas/BespokeRateConfiguration"
},
{
"$ref": "#/components/schemas/BillDueDate"
},
{
"$ref": "#/components/schemas/BillingDocumentIssuanceFrequencyTerm"
},
{
"$ref": "#/components/schemas/CharacteristicOverrideConfiguration"
},
{
"$ref": "#/components/schemas/CollateralRequired"
},
{
"$ref": "#/components/schemas/ContractMetaData"
},
{
"$ref": "#/components/schemas/ContractedVolumeConfiguration"
},
{
"$ref": "#/components/schemas/CorrectivePeriod"
},
{
"$ref": "#/components/schemas/DelayerDays"
},
{
"$ref": "#/components/schemas/GuaranteeOfOriginConfiguration"
},
{
"$ref": "#/components/schemas/LatePaymentFees"
},
{
"$ref": "#/components/schemas/MinimumContractLength"
},
{
"$ref": "#/components/schemas/PaysByDirectDebitTerm"
},
{
"$ref": "#/components/schemas/ProductRateOverrideConfiguration"
},
{
"$ref": "#/components/schemas/PromotionAssignmentTerm"
},
{
"$ref": "#/components/schemas/RateGroupEligibilityConfiguration"
},
{
"$ref": "#/components/schemas/TrancheTargetResidualFee"
},
{
"$ref": "#/components/schemas/TaxAdjustmentConfiguration"
},
{
"$ref": "#/components/schemas/TerminationFee"
}
]
No attributes to display
No attributes to display
New
{
"x-enum-descriptions": {
"sin_email": "Sin Email"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Sin Email": "Sin Email"
}
}Old
{
"x-enum-descriptions": {}
}Old
{
"maxItems": 1
}Old
{
"maxItems": 1
}1 July 2026
New
{
"x-validators": [
{
"name": "Validate bespoke rate items are unique",
"description": "Validate that no two bespoke rate items in a schedule share the same rate specification code, rate specification type, and variant profile.",
"possible_errors": [
"duplicate_bespoke_rate_items"
]
}
]
}New
{
"x-enum-descriptions": {
"promo": "Promo Extra"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Promo Extra": "Promo Extra"
}
}Old
{
"x-enum-descriptions": {}
}30 June 2026
No attributes to display
New
[
{
"name": "Ensures only <code>user_details</code> or <code>details</code> are provided",
"description": "Ensures that only <code>user_details</code> or <code>details</code> are provided, not both.",
"possible_errors": [
"customer_details_and_user_details_both_provided"
]
},
{
"name": "Validate no contact details for occupier",
"description": "Validates that a customer identified as \"The Occupier\" does not have contact details. If contact details are provided it implies that the identity of the customer is known, and it therefore not an unknown occupier.",
"possible_errors": [
"contact_details_for_occupier"
]
},
{
"name": "Validate that the customer's name is not \"The Occupier\"",
"description": "Validate that the customer's name is not \"The Occupier\". To indicate an occupier account, use the <code>unknown_occupier</code> flag at the account-level.",
"possible_errors": [
"customer_may_not_be_named_the_occupier"
]
},
{
"name": "Validate metadata",
"description": "Validate that metadata, which is a list of key value pairs, does not contain duplicate keys.",
"possible_errors": [
"metadata_has_duplicate_keys"
]
},
{
"name": "Validate user role",
"description": "Validates that at least one user role is provided through <code>portfolio_roles</code> or <code>account_roles</code>.",
"possible_errors": [
"required_user_role"
]
},
{
"name": "Validate exclusive role assignment",
"description": "Validates that an exclusively-assignable role is not assigned to a user alongside any other role, whether in the same payload or already held by the user.",
"possible_errors": [
"customer_has_exclusive_role_conflict"
]
},
{
"name": "Validate that <code>\u2068customer_preferences\u2069</code> and <code>\u2068consents\u2069</code> are not both provided",
"description": "Validate that \u2068customer_preferences\u2069 and \u2068consents\u2069 are not both provided.",
"possible_errors": [
"fields_are_mutually_exclusive"
]
},
{
"name": "Validate that fields required for account representative roles are present",
"description": "Validate that the <code>details</code> and <code>given_name</code> fields are present, and that the <code>fiscal_code</code> and <code>first_family_name</code> fields are present in <code>details</code> if the user's role is <code> billing representative</code> or <code>account holder</code>.",
"possible_errors": [
"customer_details_missing"
]
},
{
"name": "Validate that emails are unique across customers",
"description": "Validate that there is no customer with the same email and different fiscal code.",
"possible_errors": [
"customer_email_with_different_fiscal_code"
]
}
]Old
[
{
"name": "Ensures only <code>user_details</code> or <code>details</code> are provided",
"description": "Ensures that only <code>user_details</code> or <code>details</code> are provided, not both.",
"possible_errors": [
"customer_details_and_user_details_both_provided"
]
},
{
"name": "Validate no contact details for occupier",
"description": "Validates that a customer identified as \"The Occupier\" does not have contact details. If contact details are provided it implies that the identity of the customer is known, and it therefore not an unknown occupier.",
"possible_errors": [
"contact_details_for_occupier"
]
},
{
"name": "Validate that the customer's name is not \"The Occupier\"",
"description": "Validate that the customer's name is not \"The Occupier\". To indicate an occupier account, use the <code>unknown_occupier</code> flag at the account-level.",
"possible_errors": [
"customer_may_not_be_named_the_occupier"
]
},
{
"name": "Validate metadata",
"description": "Validate that metadata, which is a list of key value pairs, does not contain duplicate keys.",
"possible_errors": [
"metadata_has_duplicate_keys"
]
},
{
"name": "Validate user role",
"description": "Validates that at least one user role is provided through <code>portfolio_roles</code> or <code>account_roles</code>.",
"possible_errors": [
"required_user_role"
]
},
{
"name": "Validate that <code>\u2068customer_preferences\u2069</code> and <code>\u2068consents\u2069</code> are not both provided",
"description": "Validate that \u2068customer_preferences\u2069 and \u2068consents\u2069 are not both provided.",
"possible_errors": [
"fields_are_mutually_exclusive"
]
},
{
"name": "Validate that fields required for account representative roles are present",
"description": "Validate that the <code>details</code> and <code>given_name</code> fields are present, and that the <code>fiscal_code</code> and <code>first_family_name</code> fields are present in <code>details</code> if the user's role is <code> billing representative</code> or <code>account holder</code>.",
"possible_errors": [
"customer_details_missing"
]
},
{
"name": "Validate that emails are unique across customers",
"description": "Validate that there is no customer with the same email and different fiscal code.",
"possible_errors": [
"customer_email_with_different_fiscal_code"
]
}
]
No attributes to display
No attributes to display
29 June 2026
New
{
"x-enum-descriptions": {
"camp_recobro_deuda_wa_junio": "Camp Recobro Deuda WA junio"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Camp Recobro Deuda WA junio": "Camp Recobro Deuda WA junio"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {}
}Old
{
"x-enum-descriptions": {
"recobro": "CAMPA\u00d1A RECOBRO WA KRK CIR"
}
}New
{
"x-enum-descriptions": {}
}Old
{
"x-enum-descriptions": {
"CAMPA\u00d1A RECOBRO WA KRK CIR": "CAMPA\u00d1A RECOBRO WA KRK CIR"
}
}26 June 2026
New
[
{
"name": "Validate <code>\u2068valid_to\u2069</code> not before <code>\u2068valid_from\u2069</code>",
"description": "Validates that <code>\u2068valid_to\u2069</code>, if given, is on or later than <code>\u2068valid_from\u2069</code>.",
"possible_errors": [
"start_date_later_than_end_date"
]
},
{
"name": "Validate each item represents a possible rate for the product",
"description": "Validate each item's rate specification, characteristic values, and scheme labels represent a rate defned on the product.",
"possible_errors": [
"characteristic_code_not_found",
"invalid_characteristic_value",
"invalid_profile_variant_for_specification",
"product_specification_not_found_for_product",
"rate_specification_not_found_for_product",
"shared_rate_not_found",
"shared_rate_not_found_for_product"
]
},
{
"name": "Validate that all required bespoke rates are present and no non-overridable rates are supplied",
"description": "Validates that bespoke rate schedules include all rate specifications marked as must-be-overridden and mandatory, and do not include any rate specifications marked as cannot-be-overridden.",
"possible_errors": [
"bespoke_rate_cannot_be_overridden",
"missing_required_bespoke_rate"
]
}
]Old
[
{
"name": "Validate <code>\u2068valid_to\u2069</code> not before <code>\u2068valid_from\u2069</code>",
"description": "Validates that <code>\u2068valid_to\u2069</code>, if given, is on or later than <code>\u2068valid_from\u2069</code>.",
"possible_errors": [
"start_date_later_than_end_date"
]
},
{
"name": "Validate each item represents a possible rate for the product",
"description": "Validate each item's rate specification, characteristic values, and scheme labels represent a rate defned on the product.",
"possible_errors": [
"characteristic_code_not_found",
"invalid_characteristic_value",
"invalid_profile_variant_for_specification",
"product_specification_not_found_for_product",
"rate_specification_not_found_for_product",
"shared_rate_not_found",
"shared_rate_not_found_for_product"
]
}
]New
[
{
"name": "Validate portfolio reference provided correctly",
"description": "Validate that a portfolio reference is provided if portfolio settings have been provided and that a portfolio reference is not provided if the import supplier is set to create new portfolios.",
"possible_errors": [
"portfolio_references_missing",
"portfolio_references_provided"
]
},
{
"name": "Validate no duplicate portfolio reference namespaces",
"description": "Validate that there are no duplicate portfolio reference namespaces in the payload.",
"possible_errors": [
"duplicate_portfolio_references"
]
}
]Old
[
{
"name": "Validate portfolio reference provided correctly",
"description": "Validate that a portfolio reference is provided if portfolio settings have been provided and that a portfolio reference is not provided if the import supplier is set to create new portfolios.",
"possible_errors": [
"portfolio_references_missing",
"portfolio_references_provided"
]
}
]New
[
{
"name": "Validate portfolio reference provided correctly",
"description": "Validate that a portfolio reference is provided if portfolio settings have been provided and that a portfolio reference is not provided if the import supplier is set to create new portfolios.",
"possible_errors": [
"portfolio_references_missing",
"portfolio_references_provided"
]
},
{
"name": "Validate no duplicate portfolio reference namespaces",
"description": "Validate that there are no duplicate portfolio reference namespaces in the payload.",
"possible_errors": [
"duplicate_portfolio_references"
]
}
]Old
[
{
"name": "Validate portfolio reference provided correctly",
"description": "Validate that a portfolio reference is provided if portfolio settings have been provided and that a portfolio reference is not provided if the import supplier is set to create new portfolios.",
"possible_errors": [
"portfolio_references_missing",
"portfolio_references_provided"
]
}
]New
[
{
"name": "Validate portfolio reference provided correctly",
"description": "Validate that a portfolio reference is provided if portfolio settings have been provided and that a portfolio reference is not provided if the import supplier is set to create new portfolios.",
"possible_errors": [
"portfolio_references_missing",
"portfolio_references_provided"
]
},
{
"name": "Validate no duplicate portfolio reference namespaces",
"description": "Validate that there are no duplicate portfolio reference namespaces in the payload.",
"possible_errors": [
"duplicate_portfolio_references"
]
}
]Old
[
{
"name": "Validate portfolio reference provided correctly",
"description": "Validate that a portfolio reference is provided if portfolio settings have been provided and that a portfolio reference is not provided if the import supplier is set to create new portfolios.",
"possible_errors": [
"portfolio_references_missing",
"portfolio_references_provided"
]
}
]25 June 2026
New
{
"x-enum-descriptions": {
"recobro": "CAMPA\u00d1A RECOBRO WA KRK CIR"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"CAMPA\u00d1A RECOBRO WA KRK CIR": "CAMPA\u00d1A RECOBRO WA KRK CIR"
}
}Old
{
"x-enum-descriptions": {}
}23 June 2026
New
{
"x-validators": [
{
"name": "Validate additional historical transactions do not contain charges",
"description": "Validate that <code>additional_historical_transactions</code> does not contain entries of type <code>CHARGE</code> or <code>SUPPLY_CHARGE</code>. Charges must be supplied on a historical billing document so that debt obligations and allocations are tracked correctly.",
"possible_errors": [
"charges_not_allowed_in_additional_historical_transactions"
]
}
]
}
No attributes to display
22 June 2026
New
{
"pattern": "^\\d{2}$"
}Old
{
"enum": [
"01",
"02",
"03",
"04",
"05",
"06",
"07",
"08",
"09",
"10"
],
"x-spec-enum-id": "c28680e4c7992af3",
"x-enum-descriptions": {
"01": "Income above threshold",
"02": "Household composition mismatch",
"03": "Duplicate Social Bonus detected",
"04": "Not PVPC contract",
"05": "Pension criteria not met",
"06": "Large family title invalid/expired",
"07": "Missing/insufficient data",
"08": "Tax data unavailable",
"09": "Social services validation required",
"10": "Special conditions not validated"
}
}New
{
"x-enum-descriptions": {
"mas_digital": "MAS DIGITAL"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"MAS DIGITAL": "MAS DIGITAL"
}
}Old
{
"x-enum-descriptions": {}
}New
[
{
"name": "Validate that business information is provided if not linking account to business with contract",
"description": "Validate that business information is provided for the business to link the account to if <code>link_account_to_business_with_contract</code> is false for the given import supplier.",
"possible_errors": [
"business_information_required_if_not_linking_via_contract"
]
},
{
"name": "Validate that business information is not provided if linking an account to the business of the business contract.",
"description": "Validate that business information is not provided for the business to link the account to if <code>link_account_to_business_with_contract</code> is true for the given import supplier.",
"possible_errors": [
"business_information_not_required_if_linking_via_contract"
]
},
{
"name": "Validate that at least one contract identifier is provided for import",
"description": "Validate that at least one of <code>business_contract_identifiers</code> or <code>business_contract_identifier</code> is provided in the payload.",
"possible_errors": [
"missing_contract_identifier"
]
}
]Old
[
{
"name": "Validate that values are unique in Kraken for unique registered keys",
"description": "Validate that keys with unique constraints do not already have provided value in Kraken.",
"possible_errors": [
"business_detail_value_exists_for_unique_key"
]
},
{
"name": "Validate that business information is provided if not linking account to business with contract",
"description": "Validate that business information is provided for the business to link the account to if <code>link_account_to_business_with_contract</code> is false for the given import supplier.",
"possible_errors": [
"business_information_required_if_not_linking_via_contract"
]
},
{
"name": "Validate that business information is not provided if linking an account to the business of the business contract.",
"description": "Validate that business information is not provided for the business to link the account to if <code>link_account_to_business_with_contract</code> is true for the given import supplier.",
"possible_errors": [
"business_information_not_required_if_linking_via_contract"
]
},
{
"name": "Validate that at least one contract identifier is provided for import",
"description": "Validate that at least one of <code>business_contract_identifiers</code> or <code>business_contract_identifier</code> is provided in the payload.",
"possible_errors": [
"missing_contract_identifier"
]
}
]
No attributes to display
19 June 2026
New
{
"x-enum-descriptions": {
"titular_migracion": "TITULAR_MIGRACION"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"TITULAR_MIGRACION": "TITULAR_MIGRACION"
}
}Old
{
"x-enum-descriptions": {}
}
No attributes to display
15 June 2026
No attributes to display
No attributes to display
New
[
{
"name": "Validate account type is valid",
"description": "Validate that only one account type is specified in the payload.",
"possible_errors": [
"multiple_account_types_selected"
]
},
{
"name": "Validate billing address fields",
"description": "If a legacy billing address is provided, validate that it is in the correct format.",
"possible_errors": [
"invalid_address"
]
},
{
"name": "Validate customer family name",
"description": "Validate the family name is provided for all customers on a domestic account. For Business accounts, set the family name to 'Business' if it is not provided.",
"possible_errors": [
"customer_family_name_required"
]
},
{
"name": "Validate metadata",
"description": "Validate that metadata, which is a list of key value pairs, does not contain duplicate keys.",
"possible_errors": [
"metadata_has_duplicate_keys"
]
},
{
"name": "Validate unique property external identifiers",
"description": "Ensures that <code>property_external_identifier</code> is not repeated across <code>supply_addresses</code> and <code>properties</code>.",
"possible_errors": [
"duplicate_property_external_identifiers"
]
},
{
"name": "Validate managed account type is allowed",
"description": "Validate that this instance of Kraken allows managed account types.",
"possible_errors": [
"managed_accounts_are_not_allowed"
]
},
{
"name": "Validate only portfolio lead has portfolio setting",
"description": "Validates that if portfolio settings are provided, then the account is marked as the portfolio lead.",
"possible_errors": [
"portfolio_settings_included_when_not_lead"
]
},
{
"name": "Validate business type and company number not provided for domestic accounts",
"description": "Validate that neither a business type or company number are provided for domestic accounts.",
"possible_errors": [
"business_fields_provided_for_domestic_accounts"
]
},
{
"name": "Validate no customers for unknown occupier",
"description": "Validate that no customers are provided for an unknown occupier.",
"possible_errors": [
"customer_with_unknown_occupier"
]
},
{
"name": "Validate that a customer given name is provided for business accounts",
"description": "Validate that a given name is provided for all customers on a business account. Note that this validation only applies if Kraken is configured to send registration flows for this import supplier.",
"possible_errors": [
"customer_given_name_required"
]
},
{
"name": "Validate portfolio reference provided correctly",
"description": "Validate that a portfolio reference is provided if portfolio settings have been provided and that a portfolio reference is not provided if the import supplier is set to create new portfolios.",
"possible_errors": [
"portfolio_references_missing",
"portfolio_references_provided"
]
},
{
"name": "Validate billing address style",
"description": "Validate that a legacy billing address (<code>billing_address1</code> etc.) and new-style billing address (<code>billing_address</code> object) are not both provided.",
"possible_errors": [
"billing_address_new_style_and_legacy"
]
},
{
"name": "Validate agreements are consecutive per supply point",
"description": "Validate that the agreements provided in the payload are consecutive per supply point i.e. there are no gaps or overlaps. The exception to this is for agreements provided before the current supply period for the supply point. Agreements provided before the <code>supply_start_date</code> are allowed gaps since they represent historic periods of supply and cannot be used for billing in Kraken.",
"possible_errors": [
"gaps_or_overlaps_in_agreement_dates"
]
},
{
"name": "Validate supply charge line items covered by a single agreement",
"description": "Validate each supply charge has a single agreement with matching product code that covers the period defined by it's line items minimum <code>start_date</code> to maximum <code>end_date</code>.",
"possible_errors": [
"supply_charge_line_items_not_covered_by_single_agreement"
]
},
{
"name": "Validate that Kraken can calculate when to start billing the account",
"description": "Validate that Kraken can calculate when to start billing the account. This is determined based on the existence of last billed to date, last statement closing date, and agreements.",
"possible_errors": [
"cannot_determine_responsible_for_billing_from_date"
]
},
{
"name": "Validate historical statement period end must not be in the future",
"description": "Ensures that the historical statement period end date (last_statement_closing_date or latest transaction_date) is not set in the future.",
"possible_errors": [
"historical_statement_period_end_in_future"
]
},
{
"name": "Validate that terms with supply type matches a supply point supply type",
"description": "Validate that for terms containing a <code>supply_type</code> field that there is a supply point in the payload with a matching <code>supply_type</code>.",
"possible_errors": [
"term_supply_type_mismatch"
]
},
{
"name": "Validate that supply addresses and supply points are provided if account contracts are provided",
"description": "Validate that if <code>account_contracts</code> have been provided that a supply address with supply points has been provided under <code>supply_addresses</code>",
"possible_errors": [
"account_contracts_without_supply_points"
]
},
{
"name": "Validate historical statement billing document identifier presence",
"description": "Ensure that billing document identifiers are only provided for historical statement transactions and only when the relevant feature flag is enabled.",
"possible_errors": [
"historical_statement_billing_document_identifier_missing",
"historical_statement_billing_document_identifier_not_allowed_when_feature_flag_disabled"
]
},
{
"name": "Validate current statement transactions do not provide <code>billing_document_identifier</code>",
"description": "Validate that none of the current statement transactions include a <code>billing_document_identifier</code>, as this field is only applicable to historical statement transactions.",
"possible_errors": [
"billing_document_identifier_not_allowed_for_current_statement_transactions"
]
},
{
"name": "Validate historical statement transaction billing document identifier",
"description": "Ensure that the billing document identifier is the same for all historical statement transactions.",
"possible_errors": [
"historical_statement_billing_document_identifier_mismatch"
]
},
{
"name": "Validate that contract terms' product codes are part of supply agreements",
"description": "Ensure that any contract terms with product references have corresponding products in supply addresses.",
"possible_errors": [
"contract_term_product_code_not_in_agreements"
]
},
{
"name": "Validate that business is provided if enforcing business contracts",
"description": "Validate that the business field is provided if <code>enforce_business_contracts_exist</code> is set to True on the import supplier configuration.",
"possible_errors": [
"business_field_required"
]
},
{
"name": "Validate agreement business contract identifier is declared",
"description": "Validates that an agreement's <code>business_contract_identifier</code>, if provided, is one of the account's declared <code>business_contract_identifiers</code>.",
"possible_errors": [
"agreement_business_contract_identifier_not_declared"
]
},
{
"name": "Validate that the sum of ledger balances equals the transfer balance",
"description": "Validate that the sum of all <code>ledger_balance</code> provided for each ledger in <code>ledgers</code> equals the account-level <code>transfer_balance</code>.",
"possible_errors": [
"ledger_balances_not_equal_to_transfer_balance"
]
},
{
"name": "Validate business user info against customer info",
"description": "Validates that business user information matches the corresponding customer information for basic fields.",
"possible_errors": [
"customer_details_and_user_details_both_provided"
]
},
{
"name": "Validate payment preference <code>ledger_identifier</code>",
"description": "Ensure that the <code>ledger_identifier</code> provided has an equivalent <code>ledger</code> object with the same <code>ledger_identifier</code> .",
"possible_errors": [
"invalid_payment_preference_ledger_identifier"
]
},
{
"name": "Validate that referenced ledgers are unique in payment preferences",
"description": "Ensure that each ledger is referenced in at most one payment preference.",
"possible_errors": [
"duplicate_ledger_in_payment_preferences"
]
},
{
"name": "Validate that valid instruction_identifier provided for <code>ACTIVE_NEW</code> payment preference",
"description": "Ensure that <code>ACTIVE_NEW</code> payment preference has instruction_identifier from </code>payment_instructions</code> object.",
"possible_errors": [
"active_new_payment_preference_invalid_instruction_identifier"
]
},
{
"name": "Validate that the transactions for a voucher do not exceed its value",
"description": "Validate that the sum of all transaction values for a voucher is not greater than the value of the voucher.",
"possible_errors": [
"voucher_transactions_sum_greater_than_voucher_value"
]
},
{
"name": "Validate that each voucher charge transaction id has a matching transaction id within a transaction of type CHARGE",
"description": "Validate that each <code>voucher</code> <code>charge_transaction_id</code> has a matching <code>transaction_id</code> within a transaction of <code>type</code> CHARGE in <code>current_statement_transactions</code>, <code>historical_statement_transactions</code> or <code>historical_billing_documents</code>.",
"possible_errors": [
"voucher_charge_transaction_id_not_found"
]
},
{
"name": "Validate that each voucher redemption credit transaction id has a matching transaction id within a transaction of type CREDIT",
"description": "Validate that every <code>credit_transaction_id</code> in all <code>voucher_redemptions</code> in every <code>voucher</code> has a matching <code>transaction_id</code> within a transaction of <code>type</code> CREDIT in <code>current_statement_transactions</code>, <code>historical_statement_transactions</code> or <code>historical_billing_documents</code>.",
"possible_errors": [
"voucher_redemption_credit_transaction_id_not_found"
]
},
{
"name": "Validate parent property references exist",
"description": "Validates that all <code>parent_property_reference</code> values in <code>supply_addresses</code> and <code>properties</code> correspond to a <code>property_external_identifier</code> in the payload. This ensures the property hierarchy is valid.",
"possible_errors": [
"parent_property_reference_not_found"
]
},
{
"name": "Validate that a portfolio lead account has no supply address since it makes no sense for it to have one",
"description": "Validate that a portfolio lead account has no supply address.",
"possible_errors": [
"portfolio_lead_has_a_supply_address"
]
},
{
"name": "Validate that a system account has no supply address",
"description": "Validate that a system account has no supply address",
"possible_errors": [
"system_account_has_a_supply_address"
]
},
{
"name": "Validate exactly one property for service agreement property association",
"description": "Validates that exactly one supply address is provided when there are service agreements with products that require property association.",
"possible_errors": [
"service_agreement_requires_supply_address"
]
},
{
"name": "Validate ledger identifiers are known",
"description": "Validate ledger identifiers are among supply point identifiers.",
"possible_errors": [
"unknown_ledger_identifiers"
]
},
{
"name": "Validate identifiers are unique in ledgers",
"description": "Validate identifier is not declared twice in ledgers.",
"possible_errors": [
"duplicate_identifiers_entries_found"
]
},
{
"name": "Validate agreements cover last statement closing date",
"description": "Validate that there is an agreement for each supply point covering each ledger's <code>last_statement_closing_date</code>.",
"possible_errors": [
"no_agreement_covering_last_statement_closing_date"
]
},
{
"name": "Validate no unbilled period on former supply addresses",
"description": "Validate that if a customer is no longer at the given supply address they have been fully billed. This check is performed if we are importing supply address history.",
"possible_errors": [
"unbilled_former_supply_address"
]
},
{
"name": "Validate company number provided for business account",
"description": "Validate that a business account has company number provided.",
"possible_errors": [
"company_number_required_for_business_account"
]
}
]Old
[
{
"name": "Validate account type is valid",
"description": "Validate that only one account type is specified in the payload.",
"possible_errors": [
"multiple_account_types_selected"
]
},
{
"name": "Validate billing address fields",
"description": "If a legacy billing address is provided, validate that it is in the correct format.",
"possible_errors": [
"invalid_address"
]
},
{
"name": "Validate customer family name",
"description": "Validate the family name is provided for all customers on a domestic account. For Business accounts, set the family name to 'Business' if it is not provided.",
"possible_errors": [
"customer_family_name_required"
]
},
{
"name": "Validate metadata",
"description": "Validate that metadata, which is a list of key value pairs, does not contain duplicate keys.",
"possible_errors": [
"metadata_has_duplicate_keys"
]
},
{
"name": "Validate unique property external identifiers",
"description": "Ensures that <code>property_external_identifier</code> is not repeated across <code>supply_addresses</code> and <code>properties</code>.",
"possible_errors": [
"duplicate_property_external_identifiers"
]
},
{
"name": "Validate managed account type is allowed",
"description": "Validate that this instance of Kraken allows managed account types.",
"possible_errors": [
"managed_accounts_are_not_allowed"
]
},
{
"name": "Validate only portfolio lead has portfolio setting",
"description": "Validates that if portfolio settings are provided, then the account is marked as the portfolio lead.",
"possible_errors": [
"portfolio_settings_included_when_not_lead"
]
},
{
"name": "Validate business type and company number not provided for domestic accounts",
"description": "Validate that neither a business type or company number are provided for domestic accounts.",
"possible_errors": [
"business_fields_provided_for_domestic_accounts"
]
},
{
"name": "Validate no customers for unknown occupier",
"description": "Validate that no customers are provided for an unknown occupier.",
"possible_errors": [
"customer_with_unknown_occupier"
]
},
{
"name": "Validate that a customer given name is provided for business accounts",
"description": "Validate that a given name is provided for all customers on a business account. Note that this validation only applies if Kraken is configured to send registration flows for this import supplier.",
"possible_errors": [
"customer_given_name_required"
]
},
{
"name": "Validate portfolio reference provided correctly",
"description": "Validate that a portfolio reference is provided if portfolio settings have been provided and that a portfolio reference is not provided if the import supplier is set to create new portfolios.",
"possible_errors": [
"portfolio_references_missing",
"portfolio_references_provided"
]
},
{
"name": "Validate billing address style",
"description": "Validate that a legacy billing address (<code>billing_address1</code> etc.) and new-style billing address (<code>billing_address</code> object) are not both provided.",
"possible_errors": [
"billing_address_new_style_and_legacy"
]
},
{
"name": "Validate agreements are consecutive per supply point",
"description": "Validate that the agreements provided in the payload are consecutive per supply point i.e. there are no gaps or overlaps. The exception to this is for agreements provided before the current supply period for the supply point. Agreements provided before the <code>supply_start_date</code> are allowed gaps since they represent historic periods of supply and cannot be used for billing in Kraken.",
"possible_errors": [
"gaps_or_overlaps_in_agreement_dates"
]
},
{
"name": "Validate supply charge line items covered by a single agreement",
"description": "Validate each supply charge has a single agreement with matching product code that covers the period defined by it's line items minimum <code>start_date</code> to maximum <code>end_date</code>.",
"possible_errors": [
"supply_charge_line_items_not_covered_by_single_agreement"
]
},
{
"name": "Validate that Kraken can calculate when to start billing the account",
"description": "Validate that Kraken can calculate when to start billing the account. This is determined based on the existence of last billed to date, last statement closing date, and agreements.",
"possible_errors": [
"cannot_determine_responsible_for_billing_from_date"
]
},
{
"name": "Validate historical statement period end must not be in the future",
"description": "Ensures that the historical statement period end date (last_statement_closing_date or latest transaction_date) is not set in the future.",
"possible_errors": [
"historical_statement_period_end_in_future"
]
},
{
"name": "Validate that terms with supply type matches a supply point supply type",
"description": "Validate that for terms containing a <code>supply_type</code> field that there is a supply point in the payload with a matching <code>supply_type</code>.",
"possible_errors": [
"term_supply_type_mismatch"
]
},
{
"name": "Validate that supply addresses and supply points are provided if account contracts are provided",
"description": "Validate that if <code>account_contracts</code> have been provided that a supply address with supply points has been provided under <code>supply_addresses</code>",
"possible_errors": [
"account_contracts_without_supply_points"
]
},
{
"name": "Validate historical statement billing document identifier presence",
"description": "Ensure that billing document identifiers are only provided for historical statement transactions and only when the relevant feature flag is enabled.",
"possible_errors": [
"historical_statement_billing_document_identifier_missing",
"historical_statement_billing_document_identifier_not_allowed_when_feature_flag_disabled"
]
},
{
"name": "Validate current statement transactions do not provide <code>billing_document_identifier</code>",
"description": "Validate that none of the current statement transactions include a <code>billing_document_identifier</code>, as this field is only applicable to historical statement transactions.",
"possible_errors": [
"billing_document_identifier_not_allowed_for_current_statement_transactions"
]
},
{
"name": "Validate historical statement transaction billing document identifier",
"description": "Ensure that the billing document identifier is the same for all historical statement transactions.",
"possible_errors": [
"historical_statement_billing_document_identifier_mismatch"
]
},
{
"name": "Validate that contract terms' product codes are part of supply agreements",
"description": "Ensure that any contract terms with product references have corresponding products in supply addresses.",
"possible_errors": [
"contract_term_product_code_not_in_agreements"
]
},
{
"name": "Validate that business is provided if enforcing business contracts",
"description": "Validate that the business field is provided if <code>enforce_business_contracts_exist</code> is set to True on the import supplier configuration.",
"possible_errors": [
"business_field_required"
]
},
{
"name": "Validate that the sum of ledger balances equals the transfer balance",
"description": "Validate that the sum of all <code>ledger_balance</code> provided for each ledger in <code>ledgers</code> equals the account-level <code>transfer_balance</code>.",
"possible_errors": [
"ledger_balances_not_equal_to_transfer_balance"
]
},
{
"name": "Validate business user info against customer info",
"description": "Validates that business user information matches the corresponding customer information for basic fields.",
"possible_errors": [
"customer_details_and_user_details_both_provided"
]
},
{
"name": "Validate payment preference <code>ledger_identifier</code>",
"description": "Ensure that the <code>ledger_identifier</code> provided has an equivalent <code>ledger</code> object with the same <code>ledger_identifier</code> .",
"possible_errors": [
"invalid_payment_preference_ledger_identifier"
]
},
{
"name": "Validate that referenced ledgers are unique in payment preferences",
"description": "Ensure that each ledger is referenced in at most one payment preference.",
"possible_errors": [
"duplicate_ledger_in_payment_preferences"
]
},
{
"name": "Validate that valid instruction_identifier provided for <code>ACTIVE_NEW</code> payment preference",
"description": "Ensure that <code>ACTIVE_NEW</code> payment preference has instruction_identifier from </code>payment_instructions</code> object.",
"possible_errors": [
"active_new_payment_preference_invalid_instruction_identifier"
]
},
{
"name": "Validate that the transactions for a voucher do not exceed its value",
"description": "Validate that the sum of all transaction values for a voucher is not greater than the value of the voucher.",
"possible_errors": [
"voucher_transactions_sum_greater_than_voucher_value"
]
},
{
"name": "Validate that each voucher charge transaction id has a matching transaction id within a transaction of type CHARGE",
"description": "Validate that each <code>voucher</code> <code>charge_transaction_id</code> has a matching <code>transaction_id</code> within a transaction of <code>type</code> CHARGE in <code>current_statement_transactions</code>, <code>historical_statement_transactions</code> or <code>historical_billing_documents</code>.",
"possible_errors": [
"voucher_charge_transaction_id_not_found"
]
},
{
"name": "Validate that each voucher redemption credit transaction id has a matching transaction id within a transaction of type CREDIT",
"description": "Validate that every <code>credit_transaction_id</code> in all <code>voucher_redemptions</code> in every <code>voucher</code> has a matching <code>transaction_id</code> within a transaction of <code>type</code> CREDIT in <code>current_statement_transactions</code>, <code>historical_statement_transactions</code> or <code>historical_billing_documents</code>.",
"possible_errors": [
"voucher_redemption_credit_transaction_id_not_found"
]
},
{
"name": "Validate parent property references exist",
"description": "Validates that all <code>parent_property_reference</code> values in <code>supply_addresses</code> and <code>properties</code> correspond to a <code>property_external_identifier</code> in the payload. This ensures the property hierarchy is valid.",
"possible_errors": [
"parent_property_reference_not_found"
]
},
{
"name": "Validate that a portfolio lead account has no supply address since it makes no sense for it to have one",
"description": "Validate that a portfolio lead account has no supply address.",
"possible_errors": [
"portfolio_lead_has_a_supply_address"
]
},
{
"name": "Validate that a system account has no supply address",
"description": "Validate that a system account has no supply address",
"possible_errors": [
"system_account_has_a_supply_address"
]
},
{
"name": "Validate exactly one property for service agreement property association",
"description": "Validates that exactly one supply address is provided when there are service agreements with products that require property association.",
"possible_errors": [
"service_agreement_requires_supply_address"
]
},
{
"name": "Validate ledger identifiers are known",
"description": "Validate ledger identifiers are among supply point identifiers.",
"possible_errors": [
"unknown_ledger_identifiers"
]
},
{
"name": "Validate identifiers are unique in ledgers",
"description": "Validate identifier is not declared twice in ledgers.",
"possible_errors": [
"duplicate_identifiers_entries_found"
]
},
{
"name": "Validate agreements cover last statement closing date",
"description": "Validate that there is an agreement for each supply point covering each ledger's <code>last_statement_closing_date</code>.",
"possible_errors": [
"no_agreement_covering_last_statement_closing_date"
]
},
{
"name": "Validate no unbilled period on former supply addresses",
"description": "Validate that if a customer is no longer at the given supply address they have been fully billed. This check is performed if we are importing supply address history.",
"possible_errors": [
"unbilled_former_supply_address"
]
},
{
"name": "Validate company number provided for business account",
"description": "Validate that a business account has company number provided.",
"possible_errors": [
"company_number_required_for_business_account"
]
}
]New
{
"x-enum-descriptions": {
"retorno_siglo": "Falta Retorno SIGLO"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Falta Retorno SIGLO": "Falta Retorno SIGLO"
}
}Old
{
"x-enum-descriptions": {}
}12 June 2026
No attributes to display
New
{
"x-enum-descriptions": {
"renovacion_facilita_incorrecta_tras_baja": "Renovacion Facilita incorrecta tras baja"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Renovacion Facilita incorrecta tras baja": "Renovacion Facilita incorrecta tras baja"
}
}Old
{
"x-enum-descriptions": {}
}
No attributes to display
11 June 2026
New
{
"x-enum-descriptions": {
"expediente_aj": "Expediente AJ"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Expediente AJ": "Expediente AJ"
}
}Old
{
"x-enum-descriptions": {}
}
No attributes to display
10 June 2026
New
{
"x-enum-descriptions": {
"retraso_facturacion": "Retraso Facturacion"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Retraso Facturacion": "Retraso Facturacion"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"0_UNDERAGE": "0 underage",
"1_UNDERAGE": "1 underage",
"2_UNDERAGE": "2 underage"
}
}Old
{
"x-enum-descriptions": {
"ONE_UNDERAGE": "1 underage",
"TWO_UNDERAGE": "2 underage",
"ZERO_UNDERAGE": "0 underage"
}
}9 June 2026
New
{
"x-enum-descriptions": {
"vulnerable": "Vulnerable",
"rdl_37_2020": "RDL 37-2020",
"departamento_de_cobros": "Departamento de Cobros",
"reclamacion_de_cliente": "Reclamacion de cliente"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Vulnerable": "Vulnerable",
"RDL 37-2020": "RDL 37-2020",
"Departamento de Cobros": "Departamento de Cobros",
"Reclamacion de cliente": "Reclamacion de cliente"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"concurso": "Concurso"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Concurso": "Concurso"
}
}Old
{
"x-enum-descriptions": {}
}8 June 2026
New
{
"x-enum-descriptions": {
"reclamacion_iva_consumo": "Reclamacion IVA Consumo"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Reclamacion IVA Consumo": "Reclamacion IVA Consumo"
}
}Old
{
"x-enum-descriptions": {}
}5 June 2026
New
{
"items": {
"x-enum-descriptions": {
"ADMINISTRADOR": "ADMINISTRADOR"
}
}
}Old
{
"items": {
"x-enum-descriptions": {}
}
}New
{
"items": {
"x-enum-descriptions": {
"ADMINISTRADOR": "ADMINISTRADOR"
}
}
}Old
{
"items": {
"x-enum-descriptions": {}
}
}New
{
"items": {
"x-enum-descriptions": {
"ADMINISTRADOR": "ADMINISTRADOR"
}
}
}Old
{
"items": {
"x-enum-descriptions": {}
}
}New
{
"x-enum-descriptions": {
"TOTAL_ENERGIES_ES_FACILITA_SME": "TOTAL_ENERGIES_ES_FACILITA_SME"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"TOTAL_ENERGIES_ES_FACILITA_SME": "TOTAL_ENERGIES_ES_FACILITA_SME"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"TOTAL_ENERGIES_ES_FACILITA_SME": "TOTAL_ENERGIES_ES_FACILITA_SME"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"TOTAL_ENERGIES_ES_FACILITA_SME": "TOTAL_ENERGIES_ES_FACILITA_SME"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"TOTAL_ENERGIES_ES_FACILITA_SME": "TOTAL_ENERGIES_ES_FACILITA_SME"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"TOTAL_ENERGIES_ES_FACILITA_SME": "TOTAL_ENERGIES_ES_FACILITA_SME"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"TOTAL_ENERGIES_ES_FACILITA_SME": "TOTAL_ENERGIES_ES_FACILITA_SME"
}
}Old
{
"x-enum-descriptions": {}
}New
[
{
"name": "Promotion assignment discount targets are valid",
"description": "Validates that the promotion exists, discounts are defined in the promotion, target types match the discount target type, and target identifiers are valid.",
"possible_errors": [
"discount_not_in_promotion",
"invalid_input_data",
"promotion_not_registered",
"rate_source_provider_not_registered",
"source_data_not_supported_for_fixed_rate",
"source_data_reference_mismatch",
"target_identifier_invalid",
"target_type_mismatch",
"target_type_not_registered"
]
},
{
"name": "Promotion assignment params are valid",
"description": "Validates that the params field contains only valid values. If promotion_start_date is provided, it must be a valid ISO 8601 datetime string.",
"possible_errors": [
"invalid_promotion_start_date"
]
}
]Old
[
{
"name": "Promotion assignment discount targets are valid",
"description": "Validates that the promotion exists, discounts are defined in the promotion, target types match the discount target type, and target identifiers are valid.",
"possible_errors": [
"discount_not_in_promotion",
"invalid_input_data",
"promotion_not_registered",
"rate_source_provider_not_registered",
"source_data_not_supported_for_fixed_rate",
"source_data_reference_mismatch",
"target_identifier_invalid",
"target_type_mismatch",
"target_type_not_registered"
]
}
]
No attributes to display
4 June 2026
New
{
"x-enum-descriptions": {
"interesados_dazn": "Interesados DAZN"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Interesados DAZN": "Interesados DAZN"
}
}Old
{
"x-enum-descriptions": {}
}
No attributes to display
No attributes to display
New
[
{
"name": "Validate account type is valid",
"description": "Validate that only one account type is specified in the payload.",
"possible_errors": [
"multiple_account_types_selected"
]
},
{
"name": "Validate billing address fields",
"description": "If a legacy billing address is provided, validate that it is in the correct format.",
"possible_errors": [
"invalid_address"
]
},
{
"name": "Validate customer family name",
"description": "Validate the family name is provided for all customers on a domestic account. For Business accounts, set the family name to 'Business' if it is not provided.",
"possible_errors": [
"customer_family_name_required"
]
},
{
"name": "Validate metadata",
"description": "Validate that metadata, which is a list of key value pairs, does not contain duplicate keys.",
"possible_errors": [
"metadata_has_duplicate_keys"
]
},
{
"name": "Validate unique property external identifiers",
"description": "Ensures that <code>property_external_identifier</code> is not repeated across <code>supply_addresses</code> and <code>properties</code>.",
"possible_errors": [
"duplicate_property_external_identifiers"
]
},
{
"name": "Validate managed account type is allowed",
"description": "Validate that this instance of Kraken allows managed account types.",
"possible_errors": [
"managed_accounts_are_not_allowed"
]
},
{
"name": "Validate only portfolio lead has portfolio setting",
"description": "Validates that if portfolio settings are provided, then the account is marked as the portfolio lead.",
"possible_errors": [
"portfolio_settings_included_when_not_lead"
]
},
{
"name": "Validate business type and company number not provided for domestic accounts",
"description": "Validate that neither a business type or company number are provided for domestic accounts.",
"possible_errors": [
"business_fields_provided_for_domestic_accounts"
]
},
{
"name": "Validate no customers for unknown occupier",
"description": "Validate that no customers are provided for an unknown occupier.",
"possible_errors": [
"customer_with_unknown_occupier"
]
},
{
"name": "Validate that a customer given name is provided for business accounts",
"description": "Validate that a given name is provided for all customers on a business account. Note that this validation only applies if Kraken is configured to send registration flows for this import supplier.",
"possible_errors": [
"customer_given_name_required"
]
},
{
"name": "Validate portfolio reference provided correctly",
"description": "Validate that a portfolio reference is provided if portfolio settings have been provided and that a portfolio reference is not provided if the import supplier is set to create new portfolios.",
"possible_errors": [
"portfolio_references_missing",
"portfolio_references_provided"
]
},
{
"name": "Validate billing address style",
"description": "Validate that a legacy billing address (<code>billing_address1</code> etc.) and new-style billing address (<code>billing_address</code> object) are not both provided.",
"possible_errors": [
"billing_address_new_style_and_legacy"
]
},
{
"name": "Validate agreements are consecutive per supply point",
"description": "Validate that the agreements provided in the payload are consecutive per supply point i.e. there are no gaps or overlaps. The exception to this is for agreements provided before the current supply period for the supply point. Agreements provided before the <code>supply_start_date</code> are allowed gaps since they represent historic periods of supply and cannot be used for billing in Kraken.",
"possible_errors": [
"gaps_or_overlaps_in_agreement_dates"
]
},
{
"name": "Validate supply charge line items covered by a single agreement",
"description": "Validate each supply charge has a single agreement with matching product code that covers the period defined by it's line items minimum <code>start_date</code> to maximum <code>end_date</code>.",
"possible_errors": [
"supply_charge_line_items_not_covered_by_single_agreement"
]
},
{
"name": "Validate that Kraken can calculate when to start billing the account",
"description": "Validate that Kraken can calculate when to start billing the account. This is determined based on the existence of last billed to date, last statement closing date, and agreements.",
"possible_errors": [
"cannot_determine_responsible_for_billing_from_date"
]
},
{
"name": "Validate historical statement period end must not be in the future",
"description": "Ensures that the historical statement period end date (last_statement_closing_date or latest transaction_date) is not set in the future.",
"possible_errors": [
"historical_statement_period_end_in_future"
]
},
{
"name": "Validate that terms with supply type matches a supply point supply type",
"description": "Validate that for terms containing a <code>supply_type</code> field that there is a supply point in the payload with a matching <code>supply_type</code>.",
"possible_errors": [
"term_supply_type_mismatch"
]
},
{
"name": "Validate that supply addresses and supply points are provided if account contracts are provided",
"description": "Validate that if <code>account_contracts</code> have been provided that a supply address with supply points has been provided under <code>supply_addresses</code>",
"possible_errors": [
"account_contracts_without_supply_points"
]
},
{
"name": "Validate historical statement billing document identifier presence",
"description": "Ensure that billing document identifiers are only provided for historical statement transactions and only when the relevant feature flag is enabled.",
"possible_errors": [
"historical_statement_billing_document_identifier_missing",
"historical_statement_billing_document_identifier_not_allowed_when_feature_flag_disabled"
]
},
{
"name": "Validate current statement transactions do not provide <code>billing_document_identifier</code>",
"description": "Validate that none of the current statement transactions include a <code>billing_document_identifier</code>, as this field is only applicable to historical statement transactions.",
"possible_errors": [
"billing_document_identifier_not_allowed_for_current_statement_transactions"
]
},
{
"name": "Validate historical statement transaction billing document identifier",
"description": "Ensure that the billing document identifier is the same for all historical statement transactions.",
"possible_errors": [
"historical_statement_billing_document_identifier_mismatch"
]
},
{
"name": "Validate that contract terms' product codes are part of supply agreements",
"description": "Ensure that any contract terms with product references have corresponding products in supply addresses.",
"possible_errors": [
"contract_term_product_code_not_in_agreements"
]
},
{
"name": "Validate that business is provided if enforcing business contracts",
"description": "Validate that the business field is provided if <code>enforce_business_contracts_exist</code> is set to True on the import supplier configuration.",
"possible_errors": [
"business_field_required"
]
},
{
"name": "Validate that the sum of ledger balances equals the transfer balance",
"description": "Validate that the sum of all <code>ledger_balance</code> provided for each ledger in <code>ledgers</code> equals the account-level <code>transfer_balance</code>.",
"possible_errors": [
"ledger_balances_not_equal_to_transfer_balance"
]
},
{
"name": "Validate business user info against customer info",
"description": "Validates that business user information matches the corresponding customer information for basic fields.",
"possible_errors": [
"customer_details_and_user_details_both_provided"
]
},
{
"name": "Validate payment preference <code>ledger_identifier</code>",
"description": "Ensure that the <code>ledger_identifier</code> provided has an equivalent <code>ledger</code> object with the same <code>ledger_identifier</code> .",
"possible_errors": [
"invalid_payment_preference_ledger_identifier"
]
},
{
"name": "Validate that referenced ledgers are unique in payment preferences",
"description": "Ensure that each ledger is referenced in at most one payment preference.",
"possible_errors": [
"duplicate_ledger_in_payment_preferences"
]
},
{
"name": "Validate that valid instruction_identifier provided for <code>ACTIVE_NEW</code> payment preference",
"description": "Ensure that <code>ACTIVE_NEW</code> payment preference has instruction_identifier from </code>payment_instructions</code> object.",
"possible_errors": [
"active_new_payment_preference_invalid_instruction_identifier"
]
},
{
"name": "Validate that the transactions for a voucher do not exceed its value",
"description": "Validate that the sum of all transaction values for a voucher is not greater than the value of the voucher.",
"possible_errors": [
"voucher_transactions_sum_greater_than_voucher_value"
]
},
{
"name": "Validate that each voucher charge transaction id has a matching transaction id within a transaction of type CHARGE",
"description": "Validate that each <code>voucher</code> <code>charge_transaction_id</code> has a matching <code>transaction_id</code> within a transaction of <code>type</code> CHARGE in <code>current_statement_transactions</code>, <code>historical_statement_transactions</code> or <code>historical_billing_documents</code>.",
"possible_errors": [
"voucher_charge_transaction_id_not_found"
]
},
{
"name": "Validate that each voucher redemption credit transaction id has a matching transaction id within a transaction of type CREDIT",
"description": "Validate that every <code>credit_transaction_id</code> in all <code>voucher_redemptions</code> in every <code>voucher</code> has a matching <code>transaction_id</code> within a transaction of <code>type</code> CREDIT in <code>current_statement_transactions</code>, <code>historical_statement_transactions</code> or <code>historical_billing_documents</code>.",
"possible_errors": [
"voucher_redemption_credit_transaction_id_not_found"
]
},
{
"name": "Validate parent property references exist",
"description": "Validates that all <code>parent_property_reference</code> values in <code>supply_addresses</code> and <code>properties</code> correspond to a <code>property_external_identifier</code> in the payload. This ensures the property hierarchy is valid.",
"possible_errors": [
"parent_property_reference_not_found"
]
},
{
"name": "Validate that a portfolio lead account has no supply address since it makes no sense for it to have one",
"description": "Validate that a portfolio lead account has no supply address.",
"possible_errors": [
"portfolio_lead_has_a_supply_address"
]
},
{
"name": "Validate that a system account has no supply address",
"description": "Validate that a system account has no supply address",
"possible_errors": [
"system_account_has_a_supply_address"
]
},
{
"name": "Validate exactly one property for service agreement property association",
"description": "Validates that exactly one supply address is provided when there are service agreements with products that require property association.",
"possible_errors": [
"service_agreement_requires_supply_address"
]
},
{
"name": "Validate ledger identifiers are known",
"description": "Validate ledger identifiers are among supply point identifiers.",
"possible_errors": [
"unknown_ledger_identifiers"
]
},
{
"name": "Validate identifiers are unique in ledgers",
"description": "Validate identifier is not declared twice in ledgers.",
"possible_errors": [
"duplicate_identifiers_entries_found"
]
},
{
"name": "Validate agreements cover last statement closing date",
"description": "Validate that there is an agreement for each supply point covering each ledger's <code>last_statement_closing_date</code>.",
"possible_errors": [
"no_agreement_covering_last_statement_closing_date"
]
},
{
"name": "Validate no unbilled period on former supply addresses",
"description": "Validate that if a customer is no longer at the given supply address they have been fully billed. This check is performed if we are importing supply address history.",
"possible_errors": [
"unbilled_former_supply_address"
]
},
{
"name": "Validate company number provided for business account",
"description": "Validate that a business account has company number provided.",
"possible_errors": [
"company_number_required_for_business_account"
]
}
]Old
[
{
"name": "Validate account type is valid",
"description": "Validate that only one account type is specified in the payload.",
"possible_errors": [
"multiple_account_types_selected"
]
},
{
"name": "Validate billing address fields",
"description": "If a legacy billing address is provided, validate that it is in the correct format.",
"possible_errors": [
"invalid_address"
]
},
{
"name": "Validate customer family name",
"description": "Validate the family name is provided for all customers on a domestic account. For Business accounts, set the family name to 'Business' if it is not provided.",
"possible_errors": [
"customer_family_name_required"
]
},
{
"name": "Validate metadata",
"description": "Validate that metadata, which is a list of key value pairs, does not contain duplicate keys.",
"possible_errors": [
"metadata_has_duplicate_keys"
]
},
{
"name": "Validate unique property external identifiers",
"description": "Ensures that <code>property_external_identifier</code> is not repeated across <code>supply_addresses</code> and <code>properties</code>.",
"possible_errors": [
"duplicate_property_external_identifiers"
]
},
{
"name": "Validate managed account type is allowed",
"description": "Validate that this instance of Kraken allows managed account types.",
"possible_errors": [
"managed_accounts_are_not_allowed"
]
},
{
"name": "Validate only portfolio lead has portfolio setting",
"description": "Validates that if portfolio settings are provided, then the account is marked as the portfolio lead.",
"possible_errors": [
"portfolio_settings_included_when_not_lead"
]
},
{
"name": "Validate business type and company number not provided for domestic accounts",
"description": "Validate that neither a business type or company number are provided for domestic accounts.",
"possible_errors": [
"business_fields_provided_for_domestic_accounts"
]
},
{
"name": "Validate no customers for unknown occupier",
"description": "Validate that no customers are provided for an unknown occupier.",
"possible_errors": [
"customer_with_unknown_occupier"
]
},
{
"name": "Validate that a customer given name is provided for business accounts",
"description": "Validate that a given name is provided for all customers on a business account. Note that this validation only applies if Kraken is configured to send registration flows for this import supplier.",
"possible_errors": [
"customer_given_name_required"
]
},
{
"name": "Validate portfolio reference provided correctly",
"description": "Validate that a portfolio reference is provided if portfolio settings have been provided and that a portfolio reference is not provided if the import supplier is set to create new portfolios.",
"possible_errors": [
"portfolio_references_missing",
"portfolio_references_provided"
]
},
{
"name": "Validate billing address style",
"description": "Validate that a legacy billing address (<code>billing_address1</code> etc.) and new-style billing address (<code>billing_address</code> object) are not both provided.",
"possible_errors": [
"billing_address_new_style_and_legacy"
]
},
{
"name": "Validate agreements are consecutive per supply point",
"description": "Validate that the agreements provided in the payload are consecutive per supply point i.e. there are no gaps or overlaps. The exception to this is for agreements provided before the current supply period for the supply point. Agreements provided before the <code>supply_start_date</code> are allowed gaps since they represent historic periods of supply and cannot be used for billing in Kraken.",
"possible_errors": [
"gaps_or_overlaps_in_agreement_dates"
]
},
{
"name": "Validate supply charge line items covered by a single agreement",
"description": "Validate each supply charge has a single agreement with matching product code that covers the period defined by it's line items minimum <code>start_date</code> to maximum <code>end_date</code>.",
"possible_errors": [
"supply_charge_line_items_not_covered_by_single_agreement"
]
},
{
"name": "Validate that Kraken can calculate when to start billing the account",
"description": "Validate that Kraken can calculate when to start billing the account. This is determined based on the existence of last billed to date, last statement closing date, and agreements.",
"possible_errors": [
"cannot_determine_responsible_for_billing_from_date"
]
},
{
"name": "Validate historical statement period end must not be in the future",
"description": "Ensures that the historical statement period end date (last_statement_closing_date or latest transaction_date) is not set in the future.",
"possible_errors": [
"historical_statement_period_end_in_future"
]
},
{
"name": "Validate that terms with supply type matches a supply point supply type",
"description": "Validate that for terms containing a <code>supply_type</code> field that there is a supply point in the payload with a matching <code>supply_type</code>.",
"possible_errors": [
"term_supply_type_mismatch"
]
},
{
"name": "Validate that supply addresses and supply points are provided if account contracts are provided",
"description": "Validate that if <code>account_contracts</code> have been provided that a supply address with supply points has been provided under <code>supply_addresses</code>",
"possible_errors": [
"account_contracts_without_supply_points"
]
},
{
"name": "Validate historical statement billing document identifier presence",
"description": "Ensure that billing document identifiers are only provided for historical statement transactions and only when the relevant feature flag is enabled.",
"possible_errors": [
"historical_statement_billing_document_identifier_missing",
"historical_statement_billing_document_identifier_not_allowed_when_feature_flag_disabled"
]
},
{
"name": "Validate current statement transactions do not provide <code>billing_document_identifier</code>",
"description": "Validate that none of the current statement transactions include a <code>billing_document_identifier</code>, as this field is only applicable to historical statement transactions.",
"possible_errors": [
"billing_document_identifier_not_allowed_for_current_statement_transactions"
]
},
{
"name": "Validate historical statement transaction billing document identifier",
"description": "Ensure that the billing document identifier is the same for all historical statement transactions.",
"possible_errors": [
"historical_statement_billing_document_identifier_mismatch"
]
},
{
"name": "Validate that contract terms' product codes are part of supply agreements",
"description": "Ensure that any contract terms with product references have corresponding products in supply addresses.",
"possible_errors": [
"contract_term_product_code_not_in_agreements"
]
},
{
"name": "Validate that business is provided if enforcing business contracts",
"description": "Validate that the business field is provided if <code>enforce_business_contracts_exist</code> is set to True on the import supplier configuration.",
"possible_errors": [
"business_field_required"
]
},
{
"name": "Validate that the sum of ledger balances equals the transfer balance",
"description": "Validate that the sum of all <code>ledger_balance</code> provided for each ledger in <code>ledgers</code> equals the account-level <code>transfer_balance</code>.",
"possible_errors": [
"ledger_balances_not_equal_to_transfer_balance"
]
},
{
"name": "Validate business user info against customer info",
"description": "Validates that business user information matches the corresponding customer information for basic fields.",
"possible_errors": [
"customer_details_and_user_details_both_provided"
]
},
{
"name": "Validate payment preference <code>ledger_identifier</code>",
"description": "Ensure that the <code>ledger_identifier</code> provided has an equivalent <code>ledger</code> object with the same <code>ledger_identifier</code> .",
"possible_errors": [
"invalid_payment_preference_ledger_identifier"
]
},
{
"name": "Validate that referenced ledgers are unique in payment preferences",
"description": "Ensure that each ledger is referenced in at most one payment preference.",
"possible_errors": [
"duplicate_ledger_in_payment_preferences"
]
},
{
"name": "Validate that valid instruction_identifier provided for <code>ACTIVE_NEW</code> payment preference",
"description": "Ensure that <code>ACTIVE_NEW</code> payment preference has instruction_identifier from </code>payment_instructions</code> object.",
"possible_errors": [
"active_new_payment_preference_invalid_instruction_identifier"
]
},
{
"name": "Validate that the transactions for a voucher do not exceed its value",
"description": "Validate that the sum of all transaction values for a voucher is not greater than the value of the voucher.",
"possible_errors": [
"voucher_transactions_sum_greater_than_voucher_value"
]
},
{
"name": "Validate that each voucher charge transaction id has a matching transaction id within a transaction of type CHARGE",
"description": "Validate that each <code>voucher</code> <code>charge_transaction_id</code> has a matching <code>transaction_id</code> within a transaction of <code>type</code> CHARGE in <code>current_statement_transactions</code>, <code>historical_statement_transactions</code> or <code>historical_billing_documents</code>.",
"possible_errors": [
"voucher_charge_transaction_id_not_found"
]
},
{
"name": "Validate that each voucher redemption credit transaction id has a matching transaction id within a transaction of type CREDIT",
"description": "Validate that every <code>credit_transaction_id</code> in all <code>voucher_redemptions</code> in every <code>voucher</code> has a matching <code>transaction_id</code> within a transaction of <code>type</code> CREDIT in <code>current_statement_transactions</code>, <code>historical_statement_transactions</code> or <code>historical_billing_documents</code>.",
"possible_errors": [
"voucher_redemption_credit_transaction_id_not_found"
]
},
{
"name": "Validate parent property references exist",
"description": "Validates that all <code>parent_property_reference</code> values in <code>supply_addresses</code> and <code>properties</code> correspond to a <code>property_external_identifier</code> in the payload. This ensures the property hierarchy is valid.",
"possible_errors": [
"parent_property_reference_not_found"
]
},
{
"name": "Validate exactly one property for service agreement property association",
"description": "Validates that exactly one supply address is provided when there are service agreements with products that require property association.",
"possible_errors": [
"service_agreement_requires_supply_address"
]
},
{
"name": "Validate ledger identifiers are known",
"description": "Validate ledger identifiers are among supply point identifiers.",
"possible_errors": [
"unknown_ledger_identifiers"
]
},
{
"name": "Validate identifiers are unique in ledgers",
"description": "Validate identifier is not declared twice in ledgers.",
"possible_errors": [
"duplicate_identifiers_entries_found"
]
},
{
"name": "Validate agreements cover last statement closing date",
"description": "Validate that there is an agreement for each supply point covering each ledger's <code>last_statement_closing_date</code>.",
"possible_errors": [
"no_agreement_covering_last_statement_closing_date"
]
},
{
"name": "Validate no unbilled period on former supply addresses",
"description": "Validate that if a customer is no longer at the given supply address they have been fully billed. This check is performed if we are importing supply address history.",
"possible_errors": [
"unbilled_former_supply_address"
]
},
{
"name": "Validate company number provided for business account",
"description": "Validate that a business account has company number provided.",
"possible_errors": [
"company_number_required_for_business_account"
]
}
]New
{
"x-enum-descriptions": {
"SYSTEM": "System"
}
}Old
{
"x-enum-descriptions": {}
}2 June 2026
New
{
"TRANCHE_TARGET_RESIDUAL_FEE": "#/components/schemas/TrancheTargetResidualFee"
}New
[
{
"$ref": "#/components/schemas/BespokeRateConfiguration"
},
{
"$ref": "#/components/schemas/BillDueDate"
},
{
"$ref": "#/components/schemas/BillingDocumentIssuanceFrequencyTerm"
},
{
"$ref": "#/components/schemas/CharacteristicOverrideConfiguration"
},
{
"$ref": "#/components/schemas/CollateralRequired"
},
{
"$ref": "#/components/schemas/ContractMetaData"
},
{
"$ref": "#/components/schemas/ContractedVolumeConfiguration"
},
{
"$ref": "#/components/schemas/CorrectivePeriod"
},
{
"$ref": "#/components/schemas/DelayerDays"
},
{
"$ref": "#/components/schemas/GuaranteeOfOriginConfiguration"
},
{
"$ref": "#/components/schemas/LatePaymentFees"
},
{
"$ref": "#/components/schemas/MinimumContractLength"
},
{
"$ref": "#/components/schemas/PaysByDirectDebitTerm"
},
{
"$ref": "#/components/schemas/ProductRateOverrideConfiguration"
},
{
"$ref": "#/components/schemas/PromotionAssignmentTerm"
},
{
"$ref": "#/components/schemas/RateGroupEligibilityConfiguration"
},
{
"$ref": "#/components/schemas/TrancheTargetResidualFee"
},
{
"$ref": "#/components/schemas/TaxAdjustmentConfiguration"
},
{
"$ref": "#/components/schemas/TerminationFee"
}
]Old
[
{
"$ref": "#/components/schemas/BespokeRateConfiguration"
},
{
"$ref": "#/components/schemas/BillDueDate"
},
{
"$ref": "#/components/schemas/BillingDocumentIssuanceFrequencyTerm"
},
{
"$ref": "#/components/schemas/CharacteristicOverrideConfiguration"
},
{
"$ref": "#/components/schemas/CollateralRequired"
},
{
"$ref": "#/components/schemas/ContractMetaData"
},
{
"$ref": "#/components/schemas/ContractedVolumeConfiguration"
},
{
"$ref": "#/components/schemas/CorrectivePeriod"
},
{
"$ref": "#/components/schemas/DelayerDays"
},
{
"$ref": "#/components/schemas/GuaranteeOfOriginConfiguration"
},
{
"$ref": "#/components/schemas/LatePaymentFees"
},
{
"$ref": "#/components/schemas/MinimumContractLength"
},
{
"$ref": "#/components/schemas/PaysByDirectDebitTerm"
},
{
"$ref": "#/components/schemas/ProductRateOverrideConfiguration"
},
{
"$ref": "#/components/schemas/PromotionAssignmentTerm"
},
{
"$ref": "#/components/schemas/RateGroupEligibilityConfiguration"
},
{
"$ref": "#/components/schemas/TaxAdjustmentConfiguration"
},
{
"$ref": "#/components/schemas/TerminationFee"
}
]1 June 2026
New
[
{
"name": "Validate <code>\u2068supply_end_date\u2069</code> not before <code>\u2068supply_start_date\u2069</code>",
"description": "Validates that <code>\u2068supply_end_date\u2069</code>, if given, is on or later than <code>\u2068supply_start_date\u2069</code>.",
"possible_errors": [
"start_date_later_than_end_date"
]
},
{
"name": "Validate agreements do not start before supply start date",
"description": "Validate that agreements do not start before the supply point's supply start date, if provided.",
"possible_errors": [
"agreement_start_date_before_supply_start_date"
]
},
{
"name": "Validate that exactly one active agreement is provided",
"description": "Validate that exactly one active agreement is provided for the supply point if it is already on supply. If the <code>supply_start_date</code> is in the future or the <code>supply_end_date</code> is in the past then we do not check for an active agreement.",
"possible_errors": [
"exactly_one_active_agreement_required"
]
},
{
"name": "Validate that a future agreement provided if supply start date is in the future",
"description": "Validate that exactly one future agreement is provided if the supply start date is in the future. This future agreement must start on the supply start date.",
"possible_errors": [
"future_agreement_required"
]
},
{
"name": "Validate <code>last_billed_to_date</code> is not more than one day before <code>supply_start_date</code>",
"description": "Validates that <code>last_billed_to_date</code>, if given, is no earlier than one day before <code>supply_start_date</code>. A value of one day before is permitted because <code>last_billed_to_date</code> is inclusive.",
"possible_errors": [
"last_billed_to_date_before_supply_start_date"
]
},
{
"name": "Validate that the supply point does not exist in Kraken",
"description": "Validate that if a supply point has be provided with agreements in the payload, that the supply point does not already exist in Kraken.",
"possible_errors": [
"supply_point_already_exists"
]
}
]Old
[
{
"name": "Validate <code>\u2068supply_end_date\u2069</code> not before <code>\u2068supply_start_date\u2069</code>",
"description": "Validates that <code>\u2068supply_end_date\u2069</code>, if given, is on or later than <code>\u2068supply_start_date\u2069</code>.",
"possible_errors": [
"start_date_later_than_end_date"
]
},
{
"name": "Validate agreements do not start before supply start date",
"description": "Validate that agreements do not start before the supply point's supply start date, if provided.",
"possible_errors": [
"agreement_start_date_before_supply_start_date"
]
},
{
"name": "Validate that exactly one active agreement is provided",
"description": "Validate that exactly one active agreement is provided for the supply point if it is already on supply. If the <code>supply_start_date</code> is in the future or the <code>supply_end_date</code> is in the past then we do not check for an active agreement.",
"possible_errors": [
"exactly_one_active_agreement_required"
]
},
{
"name": "Validate that a future agreement provided if supply start date is in the future",
"description": "Validate that exactly one future agreement is provided if the supply start date is in the future. This future agreement must start on the supply start date.",
"possible_errors": [
"future_agreement_required"
]
},
{
"name": "Validate that the supply point does not exist in Kraken",
"description": "Validate that if a supply point has be provided with agreements in the payload, that the supply point does not already exist in Kraken.",
"possible_errors": [
"supply_point_already_exists"
]
}
]New
[
{
"name": "Validate <code>\u2068supply_end_date\u2069</code> not before <code>\u2068supply_start_date\u2069</code>",
"description": "Validates that <code>\u2068supply_end_date\u2069</code>, if given, is on or later than <code>\u2068supply_start_date\u2069</code>.",
"possible_errors": [
"start_date_later_than_end_date"
]
},
{
"name": "Validate agreements do not start before supply start date",
"description": "Validate that agreements do not start before the supply point's supply start date, if provided.",
"possible_errors": [
"agreement_start_date_before_supply_start_date"
]
},
{
"name": "Validate that exactly one active agreement is provided",
"description": "Validate that exactly one active agreement is provided for the supply point if it is already on supply. If the <code>supply_start_date</code> is in the future or the <code>supply_end_date</code> is in the past then we do not check for an active agreement.",
"possible_errors": [
"exactly_one_active_agreement_required"
]
},
{
"name": "Validate that a future agreement provided if supply start date is in the future",
"description": "Validate that exactly one future agreement is provided if the supply start date is in the future. This future agreement must start on the supply start date.",
"possible_errors": [
"future_agreement_required"
]
},
{
"name": "Validate <code>last_billed_to_date</code> is not more than one day before <code>supply_start_date</code>",
"description": "Validates that <code>last_billed_to_date</code>, if given, is no earlier than one day before <code>supply_start_date</code>. A value of one day before is permitted because <code>last_billed_to_date</code> is inclusive.",
"possible_errors": [
"last_billed_to_date_before_supply_start_date"
]
},
{
"name": "Validate that the supply point does not exist in Kraken",
"description": "Validate that if a supply point has be provided with agreements in the payload, that the supply point does not already exist in Kraken.",
"possible_errors": [
"supply_point_already_exists"
]
}
]Old
[
{
"name": "Validate <code>\u2068supply_end_date\u2069</code> not before <code>\u2068supply_start_date\u2069</code>",
"description": "Validates that <code>\u2068supply_end_date\u2069</code>, if given, is on or later than <code>\u2068supply_start_date\u2069</code>.",
"possible_errors": [
"start_date_later_than_end_date"
]
},
{
"name": "Validate agreements do not start before supply start date",
"description": "Validate that agreements do not start before the supply point's supply start date, if provided.",
"possible_errors": [
"agreement_start_date_before_supply_start_date"
]
},
{
"name": "Validate that exactly one active agreement is provided",
"description": "Validate that exactly one active agreement is provided for the supply point if it is already on supply. If the <code>supply_start_date</code> is in the future or the <code>supply_end_date</code> is in the past then we do not check for an active agreement.",
"possible_errors": [
"exactly_one_active_agreement_required"
]
},
{
"name": "Validate that a future agreement provided if supply start date is in the future",
"description": "Validate that exactly one future agreement is provided if the supply start date is in the future. This future agreement must start on the supply start date.",
"possible_errors": [
"future_agreement_required"
]
},
{
"name": "Validate that the supply point does not exist in Kraken",
"description": "Validate that if a supply point has be provided with agreements in the payload, that the supply point does not already exist in Kraken.",
"possible_errors": [
"supply_point_already_exists"
]
}
]New
{
"x-enum-descriptions": {
"PROMO_REWARD": "PROMO_REWARD",
"PARTNER_REWARD": "PARTNER_REWARD"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"cambiar_dia_cobro": "CAMBIAR DIA COBRO"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"CAMBIAR DIA COBRO": "CAMBIAR DIA COBRO"
}
}Old
{
"x-enum-descriptions": {}
}29 May 2026
New
{
"x-enum-descriptions": {
"autorizado_migracion": "AUTORIZADO_MIGRACION"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"AUTORIZADO_MIGRACION": "AUTORIZADO_MIGRACION"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"ct_cuenta_sin_agreement": "CT Cuenta sin agreement"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"CT Cuenta sin agreement": "CT Cuenta sin agreement"
}
}Old
{
"x-enum-descriptions": {}
}27 May 2026
New
{
"x-enum-descriptions": {
"passport_number": "passport_number",
"passport_country": "passport_country"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {}
}Old
{
"x-enum-descriptions": {
"incidencia_m101_tecnico_gestionar_mas_tarde": "Incidencia M101 TECNICO Gestionar mas tarde"
}
}New
{
"x-enum-descriptions": {}
}Old
{
"x-enum-descriptions": {
"Incidencia M101 TECNICO Gestionar mas tarde": "Incidencia M101 TECNICO Gestionar mas tarde"
}
}26 May 2026
New
{
"x-enum-descriptions": {
"test_roles": "TEST_ROLES"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"TEST_ROLES": "TEST_ROLES"
}
}Old
{
"x-enum-descriptions": {}
}25 May 2026
New
{
"x-enum-descriptions": {
"refacturacion_pendiente": "REFACTURACION PENDIENTE"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"REFACTURACION PENDIENTE": "REFACTURACION PENDIENTE"
}
}Old
{
"x-enum-descriptions": {}
}24 May 2026
No attributes to display
No attributes to display
22 May 2026
No attributes to display
No attributes to display
21 May 2026
No attributes to display
New
{
"items": {
"x-enum-descriptions": {
"AUTORIZADO": "AUTORIZADO"
}
}
}Old
{
"items": {
"x-enum-descriptions": {}
}
}New
{
"items": {
"x-enum-descriptions": {
"AUTORIZADO": "AUTORIZADO"
}
}
}Old
{
"items": {
"x-enum-descriptions": {}
}
}New
{
"items": {
"x-enum-descriptions": {
"AUTORIZADO": "AUTORIZADO"
}
}
}Old
{
"items": {
"x-enum-descriptions": {}
}
}New
[
{
"name": "Validate account type is valid",
"description": "Validate that only one account type is specified in the payload.",
"possible_errors": [
"multiple_account_types_selected"
]
},
{
"name": "Validate billing address fields",
"description": "If a legacy billing address is provided, validate that it is in the correct format.",
"possible_errors": [
"invalid_address"
]
},
{
"name": "Validate customer family name",
"description": "Validate the family name is provided for all customers on a domestic account. For Business accounts, set the family name to 'Business' if it is not provided.",
"possible_errors": [
"customer_family_name_required"
]
},
{
"name": "Validate metadata",
"description": "Validate that metadata, which is a list of key value pairs, does not contain duplicate keys.",
"possible_errors": [
"metadata_has_duplicate_keys"
]
},
{
"name": "Validate unique property external identifiers",
"description": "Ensures that <code>property_external_identifier</code> is not repeated across <code>supply_addresses</code> and <code>properties</code>.",
"possible_errors": [
"duplicate_property_external_identifiers"
]
},
{
"name": "Validate managed account type is allowed",
"description": "Validate that this instance of Kraken allows managed account types.",
"possible_errors": [
"managed_accounts_are_not_allowed"
]
},
{
"name": "Validate only portfolio lead has portfolio setting",
"description": "Validates that if portfolio settings are provided, then the account is marked as the portfolio lead.",
"possible_errors": [
"portfolio_settings_included_when_not_lead"
]
},
{
"name": "Validate business type and company number not provided for domestic accounts",
"description": "Validate that neither a business type or company number are provided for domestic accounts.",
"possible_errors": [
"business_fields_provided_for_domestic_accounts"
]
},
{
"name": "Validate no customers for unknown occupier",
"description": "Validate that no customers are provided for an unknown occupier.",
"possible_errors": [
"customer_with_unknown_occupier"
]
},
{
"name": "Validate that a customer given name is provided for business accounts",
"description": "Validate that a given name is provided for all customers on a business account. Note that this validation only applies if Kraken is configured to send registration flows for this import supplier.",
"possible_errors": [
"customer_given_name_required"
]
},
{
"name": "Validate portfolio reference provided correctly",
"description": "Validate that a portfolio reference is provided if portfolio settings have been provided and that a portfolio reference is not provided if the import supplier is set to create new portfolios.",
"possible_errors": [
"portfolio_references_missing",
"portfolio_references_provided"
]
},
{
"name": "Validate billing address style",
"description": "Validate that a legacy billing address (<code>billing_address1</code> etc.) and new-style billing address (<code>billing_address</code> object) are not both provided.",
"possible_errors": [
"billing_address_new_style_and_legacy"
]
},
{
"name": "Validate agreements are consecutive per supply point",
"description": "Validate that the agreements provided in the payload are consecutive per supply point i.e. there are no gaps or overlaps. The exception to this is for agreements provided before the current supply period for the supply point. Agreements provided before the <code>supply_start_date</code> are allowed gaps since they represent historic periods of supply and cannot be used for billing in Kraken.",
"possible_errors": [
"gaps_or_overlaps_in_agreement_dates"
]
},
{
"name": "Validate supply charge line items covered by a single agreement",
"description": "Validate each supply charge has a single agreement with matching product code that covers the period defined by it's line items minimum <code>start_date</code> to maximum <code>end_date</code>.",
"possible_errors": [
"supply_charge_line_items_not_covered_by_single_agreement"
]
},
{
"name": "Validate that Kraken can calculate when to start billing the account",
"description": "Validate that Kraken can calculate when to start billing the account. This is determined based on the existence of last billed to date, last statement closing date, and agreements.",
"possible_errors": [
"cannot_determine_responsible_for_billing_from_date"
]
},
{
"name": "Validate historical statement period end must not be in the future",
"description": "Ensures that the historical statement period end date (last_statement_closing_date or latest transaction_date) is not set in the future.",
"possible_errors": [
"historical_statement_period_end_in_future"
]
},
{
"name": "Validate that terms with supply type matches a supply point supply type",
"description": "Validate that for terms containing a <code>supply_type</code> field that there is a supply point in the payload with a matching <code>supply_type</code>.",
"possible_errors": [
"term_supply_type_mismatch"
]
},
{
"name": "Validate that supply addresses and supply points are provided if account contracts are provided",
"description": "Validate that if <code>account_contracts</code> have been provided that a supply address with supply points has been provided under <code>supply_addresses</code>",
"possible_errors": [
"account_contracts_without_supply_points"
]
},
{
"name": "Validate historical statement billing document identifier presence",
"description": "Ensure that billing document identifiers are only provided for historical statement transactions and only when the relevant feature flag is enabled.",
"possible_errors": [
"historical_statement_billing_document_identifier_missing",
"historical_statement_billing_document_identifier_not_allowed_when_feature_flag_disabled"
]
},
{
"name": "Validate current statement transactions do not provide <code>billing_document_identifier</code>",
"description": "Validate that none of the current statement transactions include a <code>billing_document_identifier</code>, as this field is only applicable to historical statement transactions.",
"possible_errors": [
"billing_document_identifier_not_allowed_for_current_statement_transactions"
]
},
{
"name": "Validate historical statement transaction billing document identifier",
"description": "Ensure that the billing document identifier is the same for all historical statement transactions.",
"possible_errors": [
"historical_statement_billing_document_identifier_mismatch"
]
},
{
"name": "Validate that contract terms' product codes are part of supply agreements",
"description": "Ensure that any contract terms with product references have corresponding products in supply addresses.",
"possible_errors": [
"contract_term_product_code_not_in_agreements"
]
},
{
"name": "Validate that business is provided if enforcing business contracts",
"description": "Validate that the business field is provided if <code>enforce_business_contracts_exist</code> is set to True on the import supplier configuration.",
"possible_errors": [
"business_field_required"
]
},
{
"name": "Validate that the sum of ledger balances equals the transfer balance",
"description": "Validate that the sum of all <code>ledger_balance</code> provided for each ledger in <code>ledgers</code> equals the account-level <code>transfer_balance</code>.",
"possible_errors": [
"ledger_balances_not_equal_to_transfer_balance"
]
},
{
"name": "Validate business user info against customer info",
"description": "Validates that business user information matches the corresponding customer information for basic fields.",
"possible_errors": [
"customer_details_and_user_details_both_provided"
]
},
{
"name": "Validate payment preference <code>ledger_identifier</code>",
"description": "Ensure that the <code>ledger_identifier</code> provided has an equivalent <code>ledger</code> object with the same <code>ledger_identifier</code> .",
"possible_errors": [
"invalid_payment_preference_ledger_identifier"
]
},
{
"name": "Validate that referenced ledgers are unique in payment preferences",
"description": "Ensure that each ledger is referenced in at most one payment preference.",
"possible_errors": [
"duplicate_ledger_in_payment_preferences"
]
},
{
"name": "Validate that valid instruction_identifier provided for <code>ACTIVE_NEW</code> payment preference",
"description": "Ensure that <code>ACTIVE_NEW</code> payment preference has instruction_identifier from </code>payment_instructions</code> object.",
"possible_errors": [
"active_new_payment_preference_invalid_instruction_identifier"
]
},
{
"name": "Validate that the transactions for a voucher do not exceed its value",
"description": "Validate that the sum of all transaction values for a voucher is not greater than the value of the voucher.",
"possible_errors": [
"voucher_transactions_sum_greater_than_voucher_value"
]
},
{
"name": "Validate that each voucher charge transaction id has a matching transaction id within a transaction of type CHARGE",
"description": "Validate that each <code>voucher</code> <code>charge_transaction_id</code> has a matching <code>transaction_id</code> within a transaction of <code>type</code> CHARGE in <code>current_statement_transactions</code>, <code>historical_statement_transactions</code> or <code>historical_billing_documents</code>.",
"possible_errors": [
"voucher_charge_transaction_id_not_found"
]
},
{
"name": "Validate that each voucher redemption credit transaction id has a matching transaction id within a transaction of type CREDIT",
"description": "Validate that every <code>credit_transaction_id</code> in all <code>voucher_redemptions</code> in every <code>voucher</code> has a matching <code>transaction_id</code> within a transaction of <code>type</code> CREDIT in <code>current_statement_transactions</code>, <code>historical_statement_transactions</code> or <code>historical_billing_documents</code>.",
"possible_errors": [
"voucher_redemption_credit_transaction_id_not_found"
]
},
{
"name": "Validate parent property references exist",
"description": "Validates that all <code>parent_property_reference</code> values in <code>supply_addresses</code> and <code>properties</code> correspond to a <code>property_external_identifier</code> in the payload. This ensures the property hierarchy is valid.",
"possible_errors": [
"parent_property_reference_not_found"
]
},
{
"name": "Validate exactly one property for service agreement property association",
"description": "Validates that exactly one supply address is provided when there are service agreements with products that require property association.",
"possible_errors": [
"service_agreement_requires_supply_address"
]
},
{
"name": "Validate ledger identifiers are known",
"description": "Validate ledger identifiers are among supply point identifiers.",
"possible_errors": [
"unknown_ledger_identifiers"
]
},
{
"name": "Validate identifiers are unique in ledgers",
"description": "Validate identifier is not declared twice in ledgers.",
"possible_errors": [
"duplicate_identifiers_entries_found"
]
},
{
"name": "Validate agreements cover last statement closing date",
"description": "Validate that there is an agreement for each supply point covering each ledger's <code>last_statement_closing_date</code>.",
"possible_errors": [
"no_agreement_covering_last_statement_closing_date"
]
},
{
"name": "Validate no unbilled period on former supply addresses",
"description": "Validate that if a customer is no longer at the given supply address they have been fully billed. This check is performed if we are importing supply address history.",
"possible_errors": [
"unbilled_former_supply_address"
]
},
{
"name": "Validate company number provided for business account",
"description": "Validate that a business account has company number provided.",
"possible_errors": [
"company_number_required_for_business_account"
]
}
]Old
[
{
"name": "Validate account type is valid",
"description": "Validate that only one account type is specified in the payload.",
"possible_errors": [
"multiple_account_types_selected"
]
},
{
"name": "Validate billing address fields",
"description": "If a legacy billing address is provided, validate that it is in the correct format.",
"possible_errors": [
"invalid_address"
]
},
{
"name": "Validate customer family name",
"description": "Validate the family name is provided for all customers on a domestic account. For Business accounts, set the family name to 'Business' if it is not provided.",
"possible_errors": [
"customer_family_name_required"
]
},
{
"name": "Validate metadata",
"description": "Validate that metadata, which is a list of key value pairs, does not contain duplicate keys.",
"possible_errors": [
"metadata_has_duplicate_keys"
]
},
{
"name": "Validate unique property external identifiers",
"description": "Ensures that <code>property_external_identifier</code> is not repeated across <code>supply_addresses</code> and <code>properties</code>.",
"possible_errors": [
"duplicate_property_external_identifiers"
]
},
{
"name": "Validate managed account type is allowed",
"description": "Validate that this instance of Kraken allows managed account types.",
"possible_errors": [
"managed_accounts_are_not_allowed"
]
},
{
"name": "Validate only portfolio lead has portfolio setting",
"description": "Validates that if portfolio settings are provided, then the account is marked as the portfolio lead.",
"possible_errors": [
"portfolio_settings_included_when_not_lead"
]
},
{
"name": "Validate business type and company number not provided for domestic accounts",
"description": "Validate that neither a business type or company number are provided for domestic accounts.",
"possible_errors": [
"business_fields_provided_for_domestic_accounts"
]
},
{
"name": "Validate no customers for unknown occupier",
"description": "Validate that no customers are provided for an unknown occupier.",
"possible_errors": [
"customer_with_unknown_occupier"
]
},
{
"name": "Validate that a customer given name is provided for business accounts",
"description": "Validate that a given name is provided for all customers on a business account. Note that this validation only applies if Kraken is configured to send registration flows for this import supplier.",
"possible_errors": [
"customer_given_name_required"
]
},
{
"name": "Validate portfolio reference provided correctly",
"description": "Validate that a portfolio reference is provided if portfolio settings have been provided and that a portfolio reference is not provided if the import supplier is set to create new portfolios.",
"possible_errors": [
"portfolio_references_missing",
"portfolio_references_provided"
]
},
{
"name": "Validate billing address style",
"description": "Validate that a legacy billing address (<code>billing_address1</code> etc.) and new-style billing address (<code>billing_address</code> object) are not both provided.",
"possible_errors": [
"billing_address_new_style_and_legacy"
]
},
{
"name": "Validate agreements are consecutive per supply point",
"description": "Validate that the agreements provided in the payload are consecutive per supply point i.e. there are no gaps or overlaps. The exception to this is for agreements provided before the current supply period for the supply point. Agreements provided before the <code>supply_start_date</code> are allowed gaps since they represent historic periods of supply and cannot be used for billing in Kraken.",
"possible_errors": [
"gaps_or_overlaps_in_agreement_dates"
]
},
{
"name": "Validate supply charge line items covered by a single agreement",
"description": "Validate each supply charge has a single agreement with matching product code that covers the period defined by it's line items minimum <code>start_date</code> to maximum <code>end_date</code>.",
"possible_errors": [
"supply_charge_line_items_not_covered_by_single_agreement"
]
},
{
"name": "Validate that Kraken can calculate when to start billing the account",
"description": "Validate that Kraken can calculate when to start billing the account. This is determined based on the existence of last billed to date, last statement closing date, and agreements.",
"possible_errors": [
"cannot_determine_responsible_for_billing_from_date"
]
},
{
"name": "Validate historical statement period end must not be in the future",
"description": "Ensures that the historical statement period end date (last_statement_closing_date or latest transaction_date) is not set in the future.",
"possible_errors": [
"historical_statement_period_end_in_future"
]
},
{
"name": "Validate that terms with supply type matches a supply point supply type",
"description": "Validate that for terms containing a <code>supply_type</code> field that there is a supply point in the payload with a matching <code>supply_type</code>.",
"possible_errors": [
"term_supply_type_mismatch"
]
},
{
"name": "Validate that supply addresses and supply points are provided if account contracts are provided",
"description": "Validate that if <code>account_contracts</code> have been provided that a supply address with supply points has been provided under <code>supply_addresses</code>",
"possible_errors": [
"account_contracts_without_supply_points"
]
},
{
"name": "Validate historical statement billing document identifier presence",
"description": "Ensure that billing document identifiers are only provided for historical statement transactions and only when the relevant feature flag is enabled.",
"possible_errors": [
"historical_statement_billing_document_identifier_missing",
"historical_statement_billing_document_identifier_not_allowed_when_feature_flag_disabled"
]
},
{
"name": "Validate current statement transactions do not provide <code>billing_document_identifier</code>",
"description": "Validate that none of the current statement transactions include a <code>billing_document_identifier</code>, as this field is only applicable to historical statement transactions.",
"possible_errors": [
"billing_document_identifier_not_allowed_for_current_statement_transactions"
]
},
{
"name": "Validate historical statement transaction billing document identifier",
"description": "Ensure that the billing document identifier is the same for all historical statement transactions.",
"possible_errors": [
"historical_statement_billing_document_identifier_mismatch"
]
},
{
"name": "Validate that contract terms' product codes are part of supply agreements",
"description": "Ensure that any contract terms with product references have corresponding products in supply addresses.",
"possible_errors": [
"contract_term_product_code_not_in_agreements"
]
},
{
"name": "Validate that business is provided if enforcing business contracts",
"description": "Validate that the business field is provided if <code>enforce_business_contracts_exist</code> is set to True on the import supplier configuration.",
"possible_errors": [
"business_field_required"
]
},
{
"name": "Validate that the sum of ledger balances equals the transfer balance",
"description": "Validate that the sum of all <code>ledger_balance</code> provided for each ledger in <code>ledgers</code> equals the account-level <code>transfer_balance</code>.",
"possible_errors": [
"ledger_balances_not_equal_to_transfer_balance"
]
},
{
"name": "Validate business user info against customer info",
"description": "Validates that business user information matches the corresponding customer information for basic fields.",
"possible_errors": [
"customer_details_and_user_details_both_provided"
]
},
{
"name": "Validate payment preference <code>ledger_identifier</code>",
"description": "Ensure that the <code>ledger_identifier</code> provided has an equivalent <code>ledger</code> object with the same <code>ledger_identifier</code> .",
"possible_errors": [
"invalid_payment_preference_ledger_identifier"
]
},
{
"name": "Validate that referenced ledgers are unique in payment preferences",
"description": "Ensure that each ledger is referenced in at most one payment preference.",
"possible_errors": [
"duplicate_ledger_in_payment_preferences"
]
},
{
"name": "Validate that valid instruction_identifier provided for <code>ACTIVE_NEW</code> payment preference",
"description": "Ensure that <code>ACTIVE_NEW</code> payment preference has instruction_identifier from </code>payment_instructions</code> object.",
"possible_errors": [
"active_new_payment_preference_invalid_instruction_identifier"
]
},
{
"name": "Validate that the transactions for a voucher do not exceed its value",
"description": "Validate that the sum of all transaction values for a voucher is not greater than the value of the voucher.",
"possible_errors": [
"voucher_transactions_sum_greater_than_voucher_value"
]
},
{
"name": "Validate that each voucher charge transaction id has a matching transaction id within a transaction of type CHARGE",
"description": "Validate that each <code>voucher</code> <code>charge_transaction_id</code> has a matching <code>transaction_id</code> within a transaction of <code>type</code> CHARGE in <code>current_statement_transactions</code>, <code>historical_statement_transactions</code> or <code>historical_billing_documents</code>.",
"possible_errors": [
"voucher_charge_transaction_id_not_found"
]
},
{
"name": "Validate that each voucher redemption credit transaction id has a matching transaction id within a transaction of type CREDIT",
"description": "Validate that every <code>credit_transaction_id</code> in all <code>voucher_redemptions</code> in every <code>voucher</code> has a matching <code>transaction_id</code> within a transaction of <code>type</code> CREDIT in <code>current_statement_transactions</code>, <code>historical_statement_transactions</code> or <code>historical_billing_documents</code>.",
"possible_errors": [
"voucher_redemption_credit_transaction_id_not_found"
]
},
{
"name": "Validate exactly one property for service agreement property association",
"description": "Validates that exactly one supply address is provided when there are service agreements with products that require property association.",
"possible_errors": [
"service_agreement_requires_supply_address"
]
},
{
"name": "Validate ledger identifiers are known",
"description": "Validate ledger identifiers are among supply point identifiers.",
"possible_errors": [
"unknown_ledger_identifiers"
]
},
{
"name": "Validate identifiers are unique in ledgers",
"description": "Validate identifier is not declared twice in ledgers.",
"possible_errors": [
"duplicate_identifiers_entries_found"
]
},
{
"name": "Validate agreements cover last statement closing date",
"description": "Validate that there is an agreement for each supply point covering each ledger's <code>last_statement_closing_date</code>.",
"possible_errors": [
"no_agreement_covering_last_statement_closing_date"
]
},
{
"name": "Validate no unbilled period on former supply addresses",
"description": "Validate that if a customer is no longer at the given supply address they have been fully billed. This check is performed if we are importing supply address history.",
"possible_errors": [
"unbilled_former_supply_address"
]
},
{
"name": "Validate company number provided for business account",
"description": "Validate that a business account has company number provided.",
"possible_errors": [
"company_number_required_for_business_account"
]
}
]Old
{
"maxItems": 1
}20 May 2026
New
{
"x-enum-descriptions": {
"retencion_aplicada": "Retencion aplicada"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Retencion aplicada": "Retencion aplicada"
}
}Old
{
"x-enum-descriptions": {}
}19 May 2026
No attributes to display
No attributes to display
18 May 2026
New
{
"CORRECTIVE_PERIOD": "#/components/schemas/CorrectivePeriod"
}New
[
{
"$ref": "#/components/schemas/BespokeRateConfiguration"
},
{
"$ref": "#/components/schemas/BillDueDate"
},
{
"$ref": "#/components/schemas/BillingDocumentIssuanceFrequencyTerm"
},
{
"$ref": "#/components/schemas/CharacteristicOverrideConfiguration"
},
{
"$ref": "#/components/schemas/CollateralRequired"
},
{
"$ref": "#/components/schemas/ContractMetaData"
},
{
"$ref": "#/components/schemas/ContractedVolumeConfiguration"
},
{
"$ref": "#/components/schemas/CorrectivePeriod"
},
{
"$ref": "#/components/schemas/DelayerDays"
},
{
"$ref": "#/components/schemas/GuaranteeOfOriginConfiguration"
},
{
"$ref": "#/components/schemas/LatePaymentFees"
},
{
"$ref": "#/components/schemas/MinimumContractLength"
},
{
"$ref": "#/components/schemas/PaysByDirectDebitTerm"
},
{
"$ref": "#/components/schemas/ProductRateOverrideConfiguration"
},
{
"$ref": "#/components/schemas/PromotionAssignmentTerm"
},
{
"$ref": "#/components/schemas/RateGroupEligibilityConfiguration"
},
{
"$ref": "#/components/schemas/TaxAdjustmentConfiguration"
},
{
"$ref": "#/components/schemas/TerminationFee"
}
]Old
[
{
"$ref": "#/components/schemas/BespokeRateConfiguration"
},
{
"$ref": "#/components/schemas/BillDueDate"
},
{
"$ref": "#/components/schemas/BillingDocumentIssuanceFrequencyTerm"
},
{
"$ref": "#/components/schemas/CharacteristicOverrideConfiguration"
},
{
"$ref": "#/components/schemas/CollateralRequired"
},
{
"$ref": "#/components/schemas/ContractMetaData"
},
{
"$ref": "#/components/schemas/ContractedVolumeConfiguration"
},
{
"$ref": "#/components/schemas/DelayerDays"
},
{
"$ref": "#/components/schemas/GuaranteeOfOriginConfiguration"
},
{
"$ref": "#/components/schemas/LatePaymentFees"
},
{
"$ref": "#/components/schemas/MinimumContractLength"
},
{
"$ref": "#/components/schemas/PaysByDirectDebitTerm"
},
{
"$ref": "#/components/schemas/ProductRateOverrideConfiguration"
},
{
"$ref": "#/components/schemas/PromotionAssignmentTerm"
},
{
"$ref": "#/components/schemas/RateGroupEligibilityConfiguration"
},
{
"$ref": "#/components/schemas/TaxAdjustmentConfiguration"
},
{
"$ref": "#/components/schemas/TerminationFee"
}
]15 May 2026
New
{
"x-enum-descriptions": {}
}Old
{
"x-enum-descriptions": {
"NE": "None vulnerable"
}
}New
{
"x-enum-descriptions": {
"cruce_de_suministros": "Cruce de suministros"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Cruce de suministros": "Cruce de suministros"
}
}Old
{
"x-enum-descriptions": {}
}14 May 2026
No attributes to display
No attributes to display
No attributes to display
No attributes to display
No attributes to display
13 May 2026
No attributes to display
New
{
"x-enum-descriptions": {
"CHARGEBACK": "Chargeback"
}
}Old
{
"x-enum-descriptions": {}
}New
[
{
"name": "Validate account type is valid",
"description": "Validate that only one account type is specified in the payload.",
"possible_errors": [
"multiple_account_types_selected"
]
},
{
"name": "Validate billing address fields",
"description": "If a legacy billing address is provided, validate that it is in the correct format.",
"possible_errors": [
"invalid_address"
]
},
{
"name": "Validate customer family name",
"description": "Validate the family name is provided for all customers on a domestic account. For Business accounts, set the family name to 'Business' if it is not provided.",
"possible_errors": [
"customer_family_name_required"
]
},
{
"name": "Validate metadata",
"description": "Validate that metadata, which is a list of key value pairs, does not contain duplicate keys.",
"possible_errors": [
"metadata_has_duplicate_keys"
]
},
{
"name": "Validate unique property external identifiers",
"description": "Ensures that <code>property_external_identifier</code> is not repeated across <code>supply_addresses</code> and <code>properties</code>.",
"possible_errors": [
"duplicate_property_external_identifiers"
]
},
{
"name": "Validate managed account type is allowed",
"description": "Validate that this instance of Kraken allows managed account types.",
"possible_errors": [
"managed_accounts_are_not_allowed"
]
},
{
"name": "Validate only portfolio lead has portfolio setting",
"description": "Validates that if portfolio settings are provided, then the account is marked as the portfolio lead.",
"possible_errors": [
"portfolio_settings_included_when_not_lead"
]
},
{
"name": "Validate business type and company number not provided for domestic accounts",
"description": "Validate that neither a business type or company number are provided for domestic accounts.",
"possible_errors": [
"business_fields_provided_for_domestic_accounts"
]
},
{
"name": "Validate no customers for unknown occupier",
"description": "Validate that no customers are provided for an unknown occupier.",
"possible_errors": [
"customer_with_unknown_occupier"
]
},
{
"name": "Validate that a customer given name is provided for business accounts",
"description": "Validate that a given name is provided for all customers on a business account. Note that this validation only applies if Kraken is configured to send registration flows for this import supplier.",
"possible_errors": [
"customer_given_name_required"
]
},
{
"name": "Validate portfolio reference provided correctly",
"description": "Validate that a portfolio reference is provided if portfolio settings have been provided and that a portfolio reference is not provided if the import supplier is set to create new portfolios.",
"possible_errors": [
"portfolio_references_missing",
"portfolio_references_provided"
]
},
{
"name": "Validate billing address style",
"description": "Validate that a legacy billing address (<code>billing_address1</code> etc.) and new-style billing address (<code>billing_address</code> object) are not both provided.",
"possible_errors": [
"billing_address_new_style_and_legacy"
]
},
{
"name": "Validate agreements are consecutive per supply point",
"description": "Validate that the agreements provided in the payload are consecutive per supply point i.e. there are no gaps or overlaps. The exception to this is for agreements provided before the current supply period for the supply point. Agreements provided before the <code>supply_start_date</code> are allowed gaps since they represent historic periods of supply and cannot be used for billing in Kraken.",
"possible_errors": [
"gaps_or_overlaps_in_agreement_dates"
]
},
{
"name": "Validate supply charge line items covered by a single agreement",
"description": "Validate each supply charge has a single agreement with matching product code that covers the period defined by it's line items minimum <code>start_date</code> to maximum <code>end_date</code>.",
"possible_errors": [
"supply_charge_line_items_not_covered_by_single_agreement"
]
},
{
"name": "Validate that Kraken can calculate when to start billing the account",
"description": "Validate that Kraken can calculate when to start billing the account. This is determined based on the existence of last billed to date, last statement closing date, and agreements.",
"possible_errors": [
"cannot_determine_responsible_for_billing_from_date"
]
},
{
"name": "Validate historical statement period end must not be in the future",
"description": "Ensures that the historical statement period end date (last_statement_closing_date or latest transaction_date) is not set in the future.",
"possible_errors": [
"historical_statement_period_end_in_future"
]
},
{
"name": "Validate that terms with supply type matches a supply point supply type",
"description": "Validate that for terms containing a <code>supply_type</code> field that there is a supply point in the payload with a matching <code>supply_type</code>.",
"possible_errors": [
"term_supply_type_mismatch"
]
},
{
"name": "Validate that supply addresses and supply points are provided if account contracts are provided",
"description": "Validate that if <code>account_contracts</code> have been provided that a supply address with supply points has been provided under <code>supply_addresses</code>",
"possible_errors": [
"account_contracts_without_supply_points"
]
},
{
"name": "Validate historical statement billing document identifier presence",
"description": "Ensure that billing document identifiers are only provided for historical statement transactions and only when the relevant feature flag is enabled.",
"possible_errors": [
"historical_statement_billing_document_identifier_missing",
"historical_statement_billing_document_identifier_not_allowed_when_feature_flag_disabled"
]
},
{
"name": "Validate current statement transactions do not provide <code>billing_document_identifier</code>",
"description": "Validate that none of the current statement transactions include a <code>billing_document_identifier</code>, as this field is only applicable to historical statement transactions.",
"possible_errors": [
"billing_document_identifier_not_allowed_for_current_statement_transactions"
]
},
{
"name": "Validate historical statement transaction billing document identifier",
"description": "Ensure that the billing document identifier is the same for all historical statement transactions.",
"possible_errors": [
"historical_statement_billing_document_identifier_mismatch"
]
},
{
"name": "Validate that contract terms' product codes are part of supply agreements",
"description": "Ensure that any contract terms with product references have corresponding products in supply addresses.",
"possible_errors": [
"contract_term_product_code_not_in_agreements"
]
},
{
"name": "Validate that business is provided if enforcing business contracts",
"description": "Validate that the business field is provided if <code>enforce_business_contracts_exist</code> is set to True on the import supplier configuration.",
"possible_errors": [
"business_field_required"
]
},
{
"name": "Validate that the sum of ledger balances equals the transfer balance",
"description": "Validate that the sum of all <code>ledger_balance</code> provided for each ledger in <code>ledgers</code> equals the account-level <code>transfer_balance</code>.",
"possible_errors": [
"ledger_balances_not_equal_to_transfer_balance"
]
},
{
"name": "Validate business user info against customer info",
"description": "Validates that business user information matches the corresponding customer information for basic fields.",
"possible_errors": [
"customer_details_and_user_details_both_provided"
]
},
{
"name": "Validate payment preference <code>ledger_identifier</code>",
"description": "Ensure that the <code>ledger_identifier</code> provided has an equivalent <code>ledger</code> object with the same <code>ledger_identifier</code> .",
"possible_errors": [
"invalid_payment_preference_ledger_identifier"
]
},
{
"name": "Validate that referenced ledgers are unique in payment preferences",
"description": "Ensure that each ledger is referenced in at most one payment preference.",
"possible_errors": [
"duplicate_ledger_in_payment_preferences"
]
},
{
"name": "Validate that valid instruction_identifier provided for <code>ACTIVE_NEW</code> payment preference",
"description": "Ensure that <code>ACTIVE_NEW</code> payment preference has instruction_identifier from </code>payment_instructions</code> object.",
"possible_errors": [
"active_new_payment_preference_invalid_instruction_identifier"
]
},
{
"name": "Validate that the transactions for a voucher do not exceed its value",
"description": "Validate that the sum of all transaction values for a voucher is not greater than the value of the voucher.",
"possible_errors": [
"voucher_transactions_sum_greater_than_voucher_value"
]
},
{
"name": "Validate that each voucher charge transaction id has a matching transaction id within a transaction of type CHARGE",
"description": "Validate that each <code>voucher</code> <code>charge_transaction_id</code> has a matching <code>transaction_id</code> within a transaction of <code>type</code> CHARGE in <code>current_statement_transactions</code>, <code>historical_statement_transactions</code> or <code>historical_billing_documents</code>.",
"possible_errors": [
"voucher_charge_transaction_id_not_found"
]
},
{
"name": "Validate that each voucher redemption credit transaction id has a matching transaction id within a transaction of type CREDIT",
"description": "Validate that every <code>credit_transaction_id</code> in all <code>voucher_redemptions</code> in every <code>voucher</code> has a matching <code>transaction_id</code> within a transaction of <code>type</code> CREDIT in <code>current_statement_transactions</code>, <code>historical_statement_transactions</code> or <code>historical_billing_documents</code>.",
"possible_errors": [
"voucher_redemption_credit_transaction_id_not_found"
]
},
{
"name": "Validate exactly one property for service agreement property association",
"description": "Validates that exactly one supply address is provided when there are service agreements with products that require property association.",
"possible_errors": [
"service_agreement_requires_supply_address"
]
},
{
"name": "Validate ledger identifiers are known",
"description": "Validate ledger identifiers are among supply point identifiers.",
"possible_errors": [
"unknown_ledger_identifiers"
]
},
{
"name": "Validate identifiers are unique in ledgers",
"description": "Validate identifier is not declared twice in ledgers.",
"possible_errors": [
"duplicate_identifiers_entries_found"
]
},
{
"name": "Validate agreements cover last statement closing date",
"description": "Validate that there is an agreement for each supply point covering each ledger's <code>last_statement_closing_date</code>.",
"possible_errors": [
"no_agreement_covering_last_statement_closing_date"
]
},
{
"name": "Validate no unbilled period on former supply addresses",
"description": "Validate that if a customer is no longer at the given supply address they have been fully billed. This check is performed if we are importing supply address history.",
"possible_errors": [
"unbilled_former_supply_address"
]
},
{
"name": "Validate company number provided for business account",
"description": "Validate that a business account has company number provided.",
"possible_errors": [
"company_number_required_for_business_account"
]
}
]Old
[
{
"name": "Validate account type is valid",
"description": "Validate that only one account type is specified in the payload.",
"possible_errors": [
"multiple_account_types_selected"
]
},
{
"name": "Validate billing address fields",
"description": "If a legacy billing address is provided, validate that it is in the correct format.",
"possible_errors": [
"invalid_address"
]
},
{
"name": "Validate customer family name",
"description": "Validate the family name is provided for all customers on a domestic account. For Business accounts, set the family name to 'Business' if it is not provided.",
"possible_errors": [
"customer_family_name_required"
]
},
{
"name": "Validate metadata",
"description": "Validate that metadata, which is a list of key value pairs, does not contain duplicate keys.",
"possible_errors": [
"metadata_has_duplicate_keys"
]
},
{
"name": "Validate managed account type is allowed",
"description": "Validate that this instance of Kraken allows managed account types.",
"possible_errors": [
"managed_accounts_are_not_allowed"
]
},
{
"name": "Validate only portfolio lead has portfolio setting",
"description": "Validates that if portfolio settings are provided, then the account is marked as the portfolio lead.",
"possible_errors": [
"portfolio_settings_included_when_not_lead"
]
},
{
"name": "Validate business type and company number not provided for domestic accounts",
"description": "Validate that neither a business type or company number are provided for domestic accounts.",
"possible_errors": [
"business_fields_provided_for_domestic_accounts"
]
},
{
"name": "Validate no customers for unknown occupier",
"description": "Validate that no customers are provided for an unknown occupier.",
"possible_errors": [
"customer_with_unknown_occupier"
]
},
{
"name": "Validate that a customer given name is provided for business accounts",
"description": "Validate that a given name is provided for all customers on a business account. Note that this validation only applies if Kraken is configured to send registration flows for this import supplier.",
"possible_errors": [
"customer_given_name_required"
]
},
{
"name": "Validate portfolio reference provided correctly",
"description": "Validate that a portfolio reference is provided if portfolio settings have been provided and that a portfolio reference is not provided if the import supplier is set to create new portfolios.",
"possible_errors": [
"portfolio_references_missing",
"portfolio_references_provided"
]
},
{
"name": "Validate billing address style",
"description": "Validate that a legacy billing address (<code>billing_address1</code> etc.) and new-style billing address (<code>billing_address</code> object) are not both provided.",
"possible_errors": [
"billing_address_new_style_and_legacy"
]
},
{
"name": "Validate agreements are consecutive per supply point",
"description": "Validate that the agreements provided in the payload are consecutive per supply point i.e. there are no gaps or overlaps. The exception to this is for agreements provided before the current supply period for the supply point. Agreements provided before the <code>supply_start_date</code> are allowed gaps since they represent historic periods of supply and cannot be used for billing in Kraken.",
"possible_errors": [
"gaps_or_overlaps_in_agreement_dates"
]
},
{
"name": "Validate supply charge line items covered by a single agreement",
"description": "Validate each supply charge has a single agreement with matching product code that covers the period defined by it's line items minimum <code>start_date</code> to maximum <code>end_date</code>.",
"possible_errors": [
"supply_charge_line_items_not_covered_by_single_agreement"
]
},
{
"name": "Validate that Kraken can calculate when to start billing the account",
"description": "Validate that Kraken can calculate when to start billing the account. This is determined based on the existence of last billed to date, last statement closing date, and agreements.",
"possible_errors": [
"cannot_determine_responsible_for_billing_from_date"
]
},
{
"name": "Validate historical statement period end must not be in the future",
"description": "Ensures that the historical statement period end date (last_statement_closing_date or latest transaction_date) is not set in the future.",
"possible_errors": [
"historical_statement_period_end_in_future"
]
},
{
"name": "Validate that terms with supply type matches a supply point supply type",
"description": "Validate that for terms containing a <code>supply_type</code> field that there is a supply point in the payload with a matching <code>supply_type</code>.",
"possible_errors": [
"term_supply_type_mismatch"
]
},
{
"name": "Validate that supply addresses and supply points are provided if account contracts are provided",
"description": "Validate that if <code>account_contracts</code> have been provided that a supply address with supply points has been provided under <code>supply_addresses</code>",
"possible_errors": [
"account_contracts_without_supply_points"
]
},
{
"name": "Validate historical statement billing document identifier presence",
"description": "Ensure that billing document identifiers are only provided for historical statement transactions and only when the relevant feature flag is enabled.",
"possible_errors": [
"historical_statement_billing_document_identifier_missing",
"historical_statement_billing_document_identifier_not_allowed_when_feature_flag_disabled"
]
},
{
"name": "Validate current statement transactions do not provide <code>billing_document_identifier</code>",
"description": "Validate that none of the current statement transactions include a <code>billing_document_identifier</code>, as this field is only applicable to historical statement transactions.",
"possible_errors": [
"billing_document_identifier_not_allowed_for_current_statement_transactions"
]
},
{
"name": "Validate historical statement transaction billing document identifier",
"description": "Ensure that the billing document identifier is the same for all historical statement transactions.",
"possible_errors": [
"historical_statement_billing_document_identifier_mismatch"
]
},
{
"name": "Validate that contract terms' product codes are part of supply agreements",
"description": "Ensure that any contract terms with product references have corresponding products in supply addresses.",
"possible_errors": [
"contract_term_product_code_not_in_agreements"
]
},
{
"name": "Validate that business is provided if enforcing business contracts",
"description": "Validate that the business field is provided if <code>enforce_business_contracts_exist</code> is set to True on the import supplier configuration.",
"possible_errors": [
"business_field_required"
]
},
{
"name": "Validate that the sum of ledger balances equals the transfer balance",
"description": "Validate that the sum of all <code>ledger_balance</code> provided for each ledger in <code>ledgers</code> equals the account-level <code>transfer_balance</code>.",
"possible_errors": [
"ledger_balances_not_equal_to_transfer_balance"
]
},
{
"name": "Validate business user info against customer info",
"description": "Validates that business user information matches the corresponding customer information for basic fields.",
"possible_errors": [
"customer_details_and_user_details_both_provided"
]
},
{
"name": "Validate payment preference <code>ledger_identifier</code>",
"description": "Ensure that the <code>ledger_identifier</code> provided has an equivalent <code>ledger</code> object with the same <code>ledger_identifier</code> .",
"possible_errors": [
"invalid_payment_preference_ledger_identifier"
]
},
{
"name": "Validate that referenced ledgers are unique in payment preferences",
"description": "Ensure that each ledger is referenced in at most one payment preference.",
"possible_errors": [
"duplicate_ledger_in_payment_preferences"
]
},
{
"name": "Validate that valid instruction_identifier provided for <code>ACTIVE_NEW</code> payment preference",
"description": "Ensure that <code>ACTIVE_NEW</code> payment preference has instruction_identifier from </code>payment_instructions</code> object.",
"possible_errors": [
"active_new_payment_preference_invalid_instruction_identifier"
]
},
{
"name": "Validate that the transactions for a voucher do not exceed its value",
"description": "Validate that the sum of all transaction values for a voucher is not greater than the value of the voucher.",
"possible_errors": [
"voucher_transactions_sum_greater_than_voucher_value"
]
},
{
"name": "Validate that each voucher charge transaction id has a matching transaction id within a transaction of type CHARGE",
"description": "Validate that each <code>voucher</code> <code>charge_transaction_id</code> has a matching <code>transaction_id</code> within a transaction of <code>type</code> CHARGE in <code>current_statement_transactions</code>, <code>historical_statement_transactions</code> or <code>historical_billing_documents</code>.",
"possible_errors": [
"voucher_charge_transaction_id_not_found"
]
},
{
"name": "Validate that each voucher redemption credit transaction id has a matching transaction id within a transaction of type CREDIT",
"description": "Validate that every <code>credit_transaction_id</code> in all <code>voucher_redemptions</code> in every <code>voucher</code> has a matching <code>transaction_id</code> within a transaction of <code>type</code> CREDIT in <code>current_statement_transactions</code>, <code>historical_statement_transactions</code> or <code>historical_billing_documents</code>.",
"possible_errors": [
"voucher_redemption_credit_transaction_id_not_found"
]
},
{
"name": "Validate exactly one property for service agreement property association",
"description": "Validates that exactly one supply address is provided when there are service agreements with products that require property association.",
"possible_errors": [
"service_agreement_requires_supply_address"
]
},
{
"name": "Validate ledger identifiers are known",
"description": "Validate ledger identifiers are among supply point identifiers.",
"possible_errors": [
"unknown_ledger_identifiers"
]
},
{
"name": "Validate identifiers are unique in ledgers",
"description": "Validate identifier is not declared twice in ledgers.",
"possible_errors": [
"duplicate_identifiers_entries_found"
]
},
{
"name": "Validate agreements cover last statement closing date",
"description": "Validate that there is an agreement for each supply point covering each ledger's <code>last_statement_closing_date</code>.",
"possible_errors": [
"no_agreement_covering_last_statement_closing_date"
]
},
{
"name": "Validate no unbilled period on former supply addresses",
"description": "Validate that if a customer is no longer at the given supply address they have been fully billed. This check is performed if we are importing supply address history.",
"possible_errors": [
"unbilled_former_supply_address"
]
},
{
"name": "Validate company number provided for business account",
"description": "Validate that a business account has company number provided.",
"possible_errors": [
"company_number_required_for_business_account"
]
}
]12 May 2026
New
[
{
"name": "Validate <code>\u2068valid_to\u2069</code> not before <code>\u2068valid_from\u2069</code>",
"description": "Validates that <code>\u2068valid_to\u2069</code>, if given, is on or later than <code>\u2068valid_from\u2069</code>.",
"possible_errors": [
"start_date_later_than_end_date"
]
},
{
"name": "Validate each item represents a possible rate for the product",
"description": "Validate each item's rate specification, characteristic values, and scheme labels represent a rate defned on the product.",
"possible_errors": [
"characteristic_code_not_found",
"invalid_characteristic_value",
"invalid_profile_variant_for_specification",
"product_specification_not_found_for_product",
"rate_specification_not_found_for_product",
"shared_rate_not_found",
"shared_rate_not_found_for_product"
]
}
]Old
[
{
"name": "Validate <code>\u2068valid_to\u2069</code> not before <code>\u2068valid_from\u2069</code>",
"description": "Validates that <code>\u2068valid_to\u2069</code>, if given, is on or later than <code>\u2068valid_from\u2069</code>.",
"possible_errors": [
"start_date_later_than_end_date"
]
},
{
"name": "Validate each item represents a possible rate for the product",
"description": "Validate each item's rate specification, characteristic values, and scheme labels represent a rate defned on the product.",
"possible_errors": [
"characteristic_code_not_found",
"invalid_characteristic_value",
"invalid_profile_variant_for_specification",
"product_specification_not_found_for_product",
"rate_specification_not_found_for_product"
]
}
]
No attributes to display
11 May 2026
New
{
"x-enum-descriptions": {
"incidencia_m101_tecnico_gestionar_mas_tarde": "Incidencia M101 TECNICO Gestionar mas tarde"
}
}Old
{
"x-enum-descriptions": {
"incidencia_m101_administrativo_gestionar_mas_tarde": "Incidencia M101 administrativo Gestionar mas tarde"
}
}New
{
"x-enum-descriptions": {
"Incidencia M101 TECNICO Gestionar mas tarde": "Incidencia M101 TECNICO Gestionar mas tarde"
}
}Old
{
"x-enum-descriptions": {
"Incidencia M101 administrativo Gestionar mas tarde": "Incidencia M101 administrativo Gestionar mas tarde"
}
}New
{
"x-enum-descriptions": {
"incidencia_m101_administrativo_gestionar_mas_tarde": "Incidencia M101 administrativo Gestionar mas tarde"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Incidencia M101 administrativo Gestionar mas tarde": "Incidencia M101 administrativo Gestionar mas tarde"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"incidencia_facturacion_tipo_r": "Incidencia facturaci\u00f3n tipo R"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Incidencia facturaci\u00f3n tipo R": "Incidencia facturaci\u00f3n tipo R"
}
}Old
{
"x-enum-descriptions": {}
}
No attributes to display
8 May 2026
New
{
"x-removal-date": "2026-05-25"
}New
{
"x-removal-date": "2026-05-25"
}7 May 2026
No attributes to display
No attributes to display
No attributes to display
6 May 2026
No attributes to display
No attributes to display
New
[
{
"name": "data-import--validation--time-series-exists-for-product",
"description": "Validate that the time series code provided matches the time series for the product with the provided product code.",
"possible_errors": [
"product_specification_not_found_for_product",
"time_series_not_found_for_product"
]
}
]Old
[
{
"name": "data-import--validation--time-series-exists-for-product",
"description": "Validate that the time series code provided matches the time series for the product with the provided product code.",
"possible_errors": [
"time_series_not_found_for_product"
]
}
]
No attributes to display
5 May 2026
New
{
"x-enum-descriptions": {
"com_renovacion_incorrecta_052026": "COM_RENOVACION_INCORRECTA_052026"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"COM_RENOVACION_INCORRECTA_052026": "COM_RENOVACION_INCORRECTA_052026"
}
}Old
{
"x-enum-descriptions": {}
}4 May 2026
New
{
"x-enum-descriptions": {}
}Old
{
"x-enum-descriptions": {
"ct_facilita": "CT Facilita",
"consentimiento_abandonos": "CONSENTIMIENTO ABANDONOS",
"consentimiento_interes_legitimo": "CONSENTIMIENTO INTERES LEGITIMO",
"consentimiento_pr_no_relacionados": "CONSENTIMIENTO PR NO RELACIONADOS",
"consentimiento_acepta_comunicacion_por_whatsapp": "CONSENTIMIENTO Acepta comunicacion por WhatsApp"
}
}New
{
"x-enum-descriptions": {}
}Old
{
"x-enum-descriptions": {
"CT Facilita": "CT Facilita",
"CONSENTIMIENTO ABANDONOS": "CONSENTIMIENTO ABANDONOS",
"CONSENTIMIENTO INTERES LEGITIMO": "CONSENTIMIENTO INTERES LEGITIMO",
"CONSENTIMIENTO PR NO RELACIONADOS": "CONSENTIMIENTO PR NO RELACIONADOS",
"CONSENTIMIENTO Acepta comunicacion por WhatsApp": "CONSENTIMIENTO Acepta comunicacion por WhatsApp"
}
}30 April 2026
New
{
"x-enum-descriptions": {}
}Old
{
"x-enum-descriptions": {
"METERING_JOB_SMS": "METERING_JOB_SMS",
"METERING_JOB_BUSINESS": "METERING_JOB_BUSINESS",
"SOLR_BALANCE_TRANSFER": "SOLR_BALANCE_TRANSFER",
"BUSINESS_ADVANCE_PAYMENT": "BUSINESS_ADVANCE_PAYMENT",
"NEST_LEARNING_THERMOSTAT_RENTAL": "NEST_LEARNING_THERMOSTAT_RENTAL"
}
}29 April 2026
No attributes to display
No attributes to display
28 April 2026
No attributes to display
27 April 2026
No attributes to display
New
{
"x-enum-descriptions": {
"esencialidad_d1_21": "Esencialidad D1_21"
}
}Old
{
"x-enum-descriptions": {
"tt_esencialidad_autoconsumo": "TT esencialidad autoconsumo"
}
}New
{
"x-enum-descriptions": {
"Esencialidad D1_21": "Esencialidad D1_21"
}
}Old
{
"x-enum-descriptions": {
"TT esencialidad autoconsumo": "TT esencialidad autoconsumo"
}
}24 April 2026
No attributes to display
No attributes to display
New
[
{
"name": "Promotion assignment discount targets are valid",
"description": "Validates that the promotion exists, discounts are defined in the promotion, target types match the discount target type, and target identifiers are valid.",
"possible_errors": [
"discount_not_in_promotion",
"invalid_input_data",
"promotion_not_registered",
"rate_source_provider_not_registered",
"source_data_not_supported_for_fixed_rate",
"source_data_reference_mismatch",
"target_identifier_invalid",
"target_type_mismatch",
"target_type_not_registered"
]
}
]Old
[
{
"name": "Promotion assignment discount targets are valid",
"description": "Validates that the promotion exists, discounts are defined in the promotion, target types match the discount target type, and target identifiers are valid.",
"possible_errors": [
"discount_not_in_promotion",
"promotion_not_registered",
"target_identifier_invalid",
"target_type_mismatch",
"target_type_not_registered"
]
}
]23 April 2026
New
{
"items": {
"$ref": "#/components/schemas/EspLedgerRecordWithBillingDocuments"
}
}Old
{
"items": {
"$ref": "#/components/schemas/EspLedgerRecordWithTransactions"
}
}New
{
"x-enum-descriptions": {
"tt_esencialidad_autoconsumo": "TT esencialidad autoconsumo"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"TT esencialidad autoconsumo": "TT esencialidad autoconsumo"
}
}Old
{
"x-enum-descriptions": {}
}21 April 2026
No attributes to display
No attributes to display
20 April 2026
New
{
"x-enum-descriptions": {
"cambio_de_producto": "Cambio de producto"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Cambio de producto": "Cambio de producto"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-removal-date": "2026-05-20"
}New
{
"x-removal-date": "2026-05-20"
}Old
{
"nullable": true
}
No attributes to display
No attributes to display
17 April 2026
New
{
"x-enum-descriptions": {}
}Old
{
"x-enum-descriptions": {
"DIRECT": "Direct",
"DIGITAL": "Digital",
"OUTBOUND": "Outbound",
"PARTNERS": "Partners",
"PRESENCIAL": "Presencial"
}
}New
{
"x-enum-descriptions": {}
}Old
{
"x-enum-descriptions": {
"DIRECT": "DIRECT",
"DIGITAL": "DIGITAL",
"OUTBOUND": "OUTBOUND",
"PARTNERS": "PARTNERS",
"PRESENCIAL": "PRESENCIAL"
}
}New
{
"x-enum-descriptions": {}
}Old
{
"x-enum-descriptions": {
"DIRECT": "Direct",
"DIGITAL": "Digital",
"OUTBOUND": "Outbound",
"PARTNERS": "Partners",
"PRESENCIAL": "Presencial"
}
}New
{
"x-enum-descriptions": {
"prueba": "PRUEBA ALEJANDRO"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"PRUEBA ALEJANDRO": "PRUEBA ALEJANDRO"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"agreement_dado_de_baja_por_error": "Agreement dado de baja por error"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Agreement dado de baja por error": "Agreement dado de baja por error"
}
}Old
{
"x-enum-descriptions": {}
}
No attributes to display
No attributes to display
10 April 2026
New
{
"x-enum-descriptions": {
"POLE": "Pole",
"LIGHT": "Light"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"POLE": "Pole",
"LIGHT": "Light"
}
}Old
{
"x-enum-descriptions": {}
}9 April 2026
New
{
"x-enum-descriptions": {
"precio_incorrecto": "Precio Incorrecto"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Precio Incorrecto": "Precio Incorrecto"
}
}Old
{
"x-enum-descriptions": {}
}6 April 2026
New
{
"x-enum-descriptions": {
"en_sapfi_con_mvtos_siglo": "EN SAPFI CON MVTOS SIGLO"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"EN SAPFI CON MVTOS SIGLO": "EN SAPFI CON MVTOS SIGLO"
}
}Old
{
"x-enum-descriptions": {}
}2 April 2026
New
{
"x-enum-descriptions": {}
}Old
{
"x-enum-descriptions": {
"DUMMY": "Dummy processor"
}
}New
{
"x-enum-descriptions": {}
}Old
{
"x-enum-descriptions": {
"DUMMY": "Dummy processor"
}
}New
{
"x-enum-descriptions": {}
}Old
{
"x-enum-descriptions": {
"DUMMY": "Dummy processor"
}
}30 March 2026
No attributes to display
No attributes to display
27 March 2026
New
{
"x-enum-descriptions": {
"CUSTOM": "Custom"
}
}Old
{
"x-enum-descriptions": {}
}
No attributes to display
No attributes to display
No attributes to display
New
{
"x-enum-descriptions": {
"precios_incorrecto_pdto_er22026": "Precios incorrecto pdto ER22026"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Precios incorrecto pdto ER22026": "Precios incorrecto pdto ER22026"
}
}Old
{
"x-enum-descriptions": {}
}26 March 2026
New
{
"x-enum-descriptions": {
"plan_vehiculo_electrico": "Plan Vehiculo Electrico"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Plan Vehiculo Electrico": "Plan Vehiculo Electrico"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"plan_carrefour": "Plan Carrefour"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Plan Carrefour": "Plan Carrefour"
}
}Old
{
"x-enum-descriptions": {}
}25 March 2026
New
{
"x-enum-descriptions": {
"incidencia_facturacion_tipo_g": "Incidencia facturacion tipo G"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Incidencia facturacion tipo G": "Incidencia facturacion tipo G"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"TOTAL_ENERGIES_ES_SME_SIGLO": "TOTAL_ENERGIES_ES_SME_SIGLO"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"TOTAL_ENERGIES_ES_SME_SIGLO": "TOTAL_ENERGIES_ES_SME_SIGLO"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"TOTAL_ENERGIES_ES_SME_SIGLO": "TOTAL_ENERGIES_ES_SME_SIGLO"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"TOTAL_ENERGIES_ES_SME_SIGLO": "TOTAL_ENERGIES_ES_SME_SIGLO"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"TOTAL_ENERGIES_ES_SME_SIGLO": "TOTAL_ENERGIES_ES_SME_SIGLO"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"TOTAL_ENERGIES_ES_SME_SIGLO": "TOTAL_ENERGIES_ES_SME_SIGLO"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"TOTAL_ENERGIES_ES_SME_SIGLO": "TOTAL_ENERGIES_ES_SME_SIGLO"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"enum": [
"SME_SIGLO"
],
"type": "string",
"x-spec-enum-id": "1002c517238fdb99",
"x-enum-descriptions": {
"SME_SIGLO": "SME_SIGLO"
}
}Old
{
"x-comment": "Choices for this field are dynamic, once appropriate values have been configured they will be rendered here.",
"x-spec-enum-id": "4f53cda18c2baa0c"
}New
{
"enum": [
"SME_SIGLO"
],
"type": "string",
"x-spec-enum-id": "1002c517238fdb99",
"x-enum-descriptions": {
"SME_SIGLO": "SME_SIGLO"
}
}Old
{
"x-comment": "Choices for this field are dynamic, once appropriate values have been configured they will be rendered here.",
"x-spec-enum-id": "4f53cda18c2baa0c"
}24 March 2026
New
{
"x-removal-date": "2026-04-29"
}20 March 2026
New
{
"x-enum-descriptions": {
"incidencia_procesado_b70": "Incidencia procesado B70"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Incidencia procesado B70": "Incidencia procesado B70"
}
}Old
{
"x-enum-descriptions": {}
}18 March 2026
New
{
"x-enum-descriptions": {
"026": "6.2TDVE",
"027": "3.0TDVE-Embarcaciones",
"028": "6.1TDVE-Embarcaciones",
"029": "6.2TDVE-Embarcaciones"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"026": "6.2TDVE",
"027": "3.0TDVE-Embarcaciones",
"028": "6.1TDVE-Embarcaciones",
"029": "6.2TDVE-Embarcaciones"
}
}Old
{
"x-enum-descriptions": {}
}17 March 2026
New
{
"x-enum-descriptions": {
"incidencia_facturacion_conceptos_adicionales": "Incidencia facturacion Conceptos Adicionales",
"incidencia_facturacion_lectura_estimada_electricidad": "Incidencia facturacion lectura estimada electricidad"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Incidencia facturacion Conceptos Adicionales": "Incidencia facturacion Conceptos Adicionales",
"Incidencia facturacion lectura estimada electricidad": "Incidencia facturacion lectura estimada electricidad"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"reclamacion_facilita": "Reclamacion Facilita"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Reclamacion Facilita": "Reclamacion Facilita"
}
}Old
{
"x-enum-descriptions": {}
}16 March 2026
New
{
"x-enum-descriptions": {
"consentimiento_abandonos": "CONSENTIMIENTO ABANDONOS",
"consentimiento_interes_legitimo": "CONSENTIMIENTO INTERES LEGITIMO",
"consentimiento_pr_no_relacionados": "CONSENTIMIENTO PR NO RELACIONADOS"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"CONSENTIMIENTO ABANDONOS": "CONSENTIMIENTO ABANDONOS",
"CONSENTIMIENTO INTERES LEGITIMO": "CONSENTIMIENTO INTERES LEGITIMO",
"CONSENTIMIENTO PR NO RELACIONADOS": "CONSENTIMIENTO PR NO RELACIONADOS"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"consentimiento_acepta_comunicacion_por_whatsapp": "CONSENTIMIENTO Acepta comunicacion por WhatsApp"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"CONSENTIMIENTO Acepta comunicacion por WhatsApp": "CONSENTIMIENTO Acepta comunicacion por WhatsApp"
}
}Old
{
"x-enum-descriptions": {}
}13 March 2026
No attributes to display
New
{
"x-enum-descriptions": {
"cliente_migrado_parcialmente": "Cliente migrado parcialmente"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Cliente migrado parcialmente": "Cliente migrado parcialmente"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"error_procesamiento_flows_de_baja_por_cambio_de_comercializadora_en_gas_a2s_y_a3s": "Error procesamiento flows de baja por cambio de comercializadora en gas A2S y A3S"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Error procesamiento flows de baja por cambio de comercializadora en gas A2S y A3S": "Error procesamiento flows de baja por cambio de comercializadora en gas A2S y A3S"
}
}Old
{
"x-enum-descriptions": {}
}11 March 2026
New
{
"x-enum-descriptions": {
"ct_facilita": "CT Facilita"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"CT Facilita": "CT Facilita"
}
}Old
{
"x-enum-descriptions": {}
}10 March 2026
New
{
"x-enum-descriptions": {
"INBOUND__ATC_PRESENCIAL__TIENDA": "Inbound -> ATC Presencial -> Tienda"
}
}Old
{
"x-enum-descriptions": {
"INBOUND__ATC_PRESENCIAL__TIENDA": "Inbound -> ATC Presencial -> TIENDA"
}
}New
{
"x-enum-descriptions": {
"INBOUND__ATC_PRESENCIAL__TIENDA": "Inbound -> ATC Presencial -> Tienda"
}
}Old
{
"x-enum-descriptions": {
"INBOUND__ATC_PRESENCIAL__TIENDA": "Inbound -> ATC Presencial -> TIENDA"
}
}4 March 2026
New
{
"x-enum-descriptions": {
"fraccionamiento_siglo_gestionado": "Fraccionamiento Siglo Gestionado"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Fraccionamiento Siglo Gestionado": "Fraccionamiento Siglo Gestionado"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"AE": "AE",
"AM": "AM",
"AP": "AP",
"AQ": "AQ",
"AT": "AT",
"AZ": "AZ",
"BE": "BE",
"BR": "BR",
"BU": "BU",
"CB": "CB",
"CE": "CE",
"DA": "DA",
"DM": "DM",
"DR": "DR",
"EA": "EA",
"EI": "EI",
"GE": "GE",
"GO": "GO",
"HO": "HO",
"ID": "ID",
"IS": "IS",
"KA": "KA",
"KL": "KL",
"KR": "KR",
"LL": "LL",
"LO": "LO",
"LR": "LR",
"MI": "MI",
"NA": "NA",
"NR": "NR",
"NY": "NY",
"OR": "OR",
"OS": "OS",
"PF": "PF",
"RB": "RB",
"RT": "RT",
"RW": "RW",
"SR": "SR",
"SV": "SV",
"TI": "TI",
"TJ": "TJ",
"TL": "TL",
"VE": "VE",
"VL": "VL",
"VY": "VY",
"ZA": "ZA"
}
}Old
{
"x-enum-descriptions": {}
}2 March 2026
New
{
"x-enum-descriptions": {
"en_sapfi": "MIGRADO SAPFI"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"MIGRADO SAPFI": "MIGRADO SAPFI"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"a305_en_incidence": "A305 en INCIDENCE"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"A305 en INCIDENCE": "A305 en INCIDENCE"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"error_procesamiento_a203": "Error procesamiento A203"
}
}Old
{
"x-enum-descriptions": {}
}New
{
"x-enum-descriptions": {
"Error procesamiento A203": "Error procesamiento A203"
}
}Old
{
"x-enum-descriptions": {}
}27 February 2026
New
{
"x-validators": [
{
"name": "Validate <code>organisation_number</code>",
"description": "Validate that the given <code>organisation_number</code> has a corresponding organisation registered in the database.",
"possible_errors": [
"partner_organisation_does_not_exist"
]
}
]
}25 February 2026
New
{
"pattern": "^-?\\d{0,7}(?:\\.\\d{0,4})?$"
}Old
{
"pattern": "^-?\\d{0,7}(?:\\.\\d{0,2})?$"
}24 February 2026
No attributes to display
19 February 2026
New
[
{
"name": "Validate account type is valid",
"description": "Validate that only one account type is specified in the payload.",
"possible_errors": [
"multiple_account_types_selected"
]
},
{
"name": "Validate billing address fields",
"description": "If a legacy billing address is provided, validate that it is in the correct format.",
"possible_errors": [
"invalid_address"
]
},
{
"name": "Validate customer family name",
"description": "Validate the family name is provided for all customers on a domestic account. For Business accounts, set the family name to 'Business' if it is not provided.",
"possible_errors": [
"customer_family_name_required"
]
},
{
"name": "Validate metadata",
"description": "Validate that metadata, which is a list of key value pairs, does not contain duplicate keys.",
"possible_errors": [
"metadata_has_duplicate_keys"
]
},
{
"name": "Validate managed account type is allowed",
"description": "Validate that this instance of Kraken allows managed account types.",
"possible_errors": [
"managed_accounts_are_not_allowed"
]
},
{
"name": "Validate only portfolio lead has portfolio setting",
"description": "Validates that if portfolio settings are provided, then the account is marked as the portfolio lead.",
"possible_errors": [
"portfolio_settings_included_when_not_lead"
]
},
{
"name": "Validate business type and company number not provided for domestic accounts",
"description": "Validate that neither a business type or company number are provided for domestic accounts.",
"possible_errors": [
"business_fields_provided_for_domestic_accounts"
]
},
{
"name": "Validate no customers for unknown occupier",
"description": "Validate that no customers are provided for an unknown occupier.",
"possible_errors": [
"customer_with_unknown_occupier"
]
},
{
"name": "Validate that a customer given name is provided for business accounts",
"description": "Validate that a given name is provided for all customers on a business account. Note that this validation only applies if Kraken is configured to send registration flows for this import supplier.",
"possible_errors": [
"customer_given_name_required"
]
},
{
"name": "Validate portfolio reference provided correctly",
"description": "Validate that a portfolio reference is provided if portfolio settings have been provided and that a portfolio reference is not provided if the import supplier is set to create new portfolios.",
"possible_errors": [
"portfolio_references_missing",
"portfolio_references_provided"
]
},
{
"name": "Validate billing address style",
"description": "Validate that a legacy billing address (<code>billing_address1</code> etc.) and new-style billing address (<code>billing_address</code> object) are not both provided.",
"possible_errors": [
"billing_address_new_style_and_legacy"
]
},
{
"name": "Validate agreements are consecutive per supply point",
"description": "Validate that the agreements provided in the payload are consecutive per supply point i.e. there are no gaps or overlaps. The exception to this is for agreements provided before the current supply period for the supply point. Agreements provided before the <code>supply_start_date</code> are allowed gaps since they represent historic periods of supply and cannot be used for billing in Kraken.",
"possible_errors": [
"gaps_or_overlaps_in_agreement_dates"
]
},
{
"name": "Validate supply charge line items covered by a single agreement",
"description": "Validate each supply charge has a single agreement with matching product code that covers the period defined by it's line items minimum <code>start_date</code> to maximum <code>end_date</code>.",
"possible_errors": [
"supply_charge_line_items_not_covered_by_single_agreement"
]
},
{
"name": "Validate that Kraken can calculate when to start billing the account",
"description": "Validate that Kraken can calculate when to start billing the account. This is determined based on the existence of last billed to date, last statement closing date, and agreements.",
"possible_errors": [
"cannot_determine_responsible_for_billing_from_date"
]
},
{
"name": "Validate historical statement period end must not be in the future",
"description": "Ensures that the historical statement period end date (last_statement_closing_date or latest transaction_date) is not set in the future.",
"possible_errors": [
"historical_statement_period_end_in_future"
]
},
{
"name": "Validate that terms with supply type matches a supply point supply type",
"description": "Validate that for terms containing a <code>supply_type</code> field that there is a supply point in the payload with a matching <code>supply_type</code>.",
"possible_errors": [
"term_supply_type_mismatch"
]
},
{
"name": "Validate that supply addresses and supply points are provided if account contracts are provided",
"description": "Validate that if <code>account_contracts</code> have been provided that a supply address with supply points has been provided under <code>supply_addresses</code>",
"possible_errors": [
"account_contracts_without_supply_points"
]
},
{
"name": "Validate historical statement billing document identifier presence",
"description": "Ensure that billing document identifiers are only provided for historical statement transactions and only when the relevant feature flag is enabled.",
"possible_errors": [
"historical_statement_billing_document_identifier_missing",
"historical_statement_billing_document_identifier_not_allowed_when_feature_flag_disabled"
]
},
{
"name": "Validate current statement transactions do not provide <code>billing_document_identifier</code>",
"description": "Validate that none of the current statement transactions include a <code>billing_document_identifier</code>, as this field is only applicable to historical statement transactions.",
"possible_errors": [
"billing_document_identifier_not_allowed_for_current_statement_transactions"
]
},
{
"name": "Validate historical statement transaction billing document identifier",
"description": "Ensure that the billing document identifier is the same for all historical statement transactions.",
"possible_errors": [
"historical_statement_billing_document_identifier_mismatch"
]
},
{
"name": "Validate that contract terms' product codes are part of supply agreements",
"description": "Ensure that any contract terms with product references have corresponding products in supply addresses.",
"possible_errors": [
"contract_term_product_code_not_in_agreements"
]
},
{
"name": "Validate that business is provided if enforcing business contracts",
"description": "Validate that the business field is provided if <code>enforce_business_contracts_exist</code> is set to True on the import supplier configuration.",
"possible_errors": [
"business_field_required"
]
},
{
"name": "Validate that the sum of ledger balances equals the transfer balance",
"description": "Validate that the sum of all <code>ledger_balance</code> provided for each ledger in <code>ledgers</code> equals the account-level <code>transfer_balance</code>.",
"possible_errors": [
"ledger_balances_not_equal_to_transfer_balance"
]
},
{
"name": "Validate business user info against customer info",
"description": "Validates that business user information matches the corresponding customer information for basic fields.",
"possible_errors": [
"customer_details_and_user_details_both_provided"
]
},
{
"name": "Validate payment preference <code>ledger_identifier</code>",
"description": "Ensure that the <code>ledger_identifier</code> provided has an equivalent <code>ledger</code> object with the same <code>ledger_identifier</code> .",
"possible_errors": [
"invalid_payment_preference_ledger_identifier"
]
},
{
"name": "Validate that referenced ledgers are unique in payment preferences",
"description": "Ensure that each ledger is referenced in at most one payment preference.",
"possible_errors": [
"duplicate_ledger_in_payment_preferences"
]
},
{
"name": "Validate that valid instruction_identifier provided for <code>ACTIVE_NEW</code> payment preference",
"description": "Ensure that <code>ACTIVE_NEW</code> payment preference has instruction_identifier from </code>payment_instructions</code> object.",
"possible_errors": [
"active_new_payment_preference_invalid_instruction_identifier"
]
},
{
"name": "Validate that the transactions for a voucher do not exceed its value",
"description": "Validate that the sum of all transaction values for a voucher is not greater than the value of the voucher.",
"possible_errors": [
"voucher_transactions_sum_greater_than_voucher_value"
]
},
{
"name": "Validate that each voucher charge transaction id has a matching transaction id within a transaction of type CHARGE",
"description": "Validate that each <code>voucher</code> <code>charge_transaction_id</code> has a matching <code>transaction_id</code> within a transaction of <code>type</code> CHARGE in <code>current_statement_transactions</code>, <code>historical_statement_transactions</code> or <code>historical_billing_documents</code>.",
"possible_errors": [
"voucher_charge_transaction_id_not_found"
]
},
{
"name": "Validate that each voucher redemption credit transaction id has a matching transaction id within a transaction of type CREDIT",
"description": "Validate that every <code>credit_transaction_id</code> in all <code>voucher_redemptions</code> in every <code>voucher</code> has a matching <code>transaction_id</code> within a transaction of <code>type</code> CREDIT in <code>current_statement_transactions</code>, <code>historical_statement_transactions</code> or <code>historical_billing_documents</code>.",
"possible_errors": [
"voucher_redemption_credit_transaction_id_not_found"
]
},
{
"name": "Validate exactly one property for service agreement property association",
"description": "Validates that exactly one supply address is provided when there are service agreements with products that require property association.",
"possible_errors": [
"service_agreement_requires_supply_address"
]
},
{
"name": "Validate ledger identifiers are known",
"description": "Validate ledger identifiers are among supply point identifiers.",
"possible_errors": [
"unknown_ledger_identifiers"
]
},
{
"name": "Validate identifiers are unique in ledgers",
"description": "Validate identifier is not declared twice in ledgers.",
"possible_errors": [
"duplicate_identifiers_entries_found"
]
},
{
"name": "Validate agreements cover last statement closing date",
"description": "Validate that there is an agreement for each supply point covering each ledger's <code>last_statement_closing_date</code>.",
"possible_errors": [
"no_agreement_covering_last_statement_closing_date"
]
},
{
"name": "Validate no unbilled period on former supply addresses",
"description": "Validate that if a customer is no longer at the given supply address they have been fully billed. This check is performed if we are importing supply address history.",
"possible_errors": [
"unbilled_former_supply_address"
]
},
{
"name": "Validate company number provided for business account",
"description": "Validate that a business account has company number provided.",
"possible_errors": [
"company_number_required_for_business_account"
]
}
]Old
[
{
"name": "Validate account type is valid",
"description": "Validate that only one account type is specified in the payload.",
"possible_errors": [
"multiple_account_types_selected"
]
},
{
"name": "Validate billing address fields",
"description": "If a legacy billing address is provided, validate that it is in the correct format.",
"possible_errors": [
"invalid_address"
]
},
{
"name": "Validate customer family name",
"description": "Validate the family name is provided for all customers on a domestic account. For Business accounts, set the family name to 'Business' if it is not provided.",
"possible_errors": [
"customer_family_name_required"
]
},
{
"name": "Validate metadata",
"description": "Validate that metadata, which is a list of key value pairs, does not contain duplicate keys.",
"possible_errors": [
"metadata_has_duplicate_keys"
]
},
{
"name": "Validate managed account type is allowed",
"description": "Validate that this instance of Kraken allows managed account types.",
"possible_errors": [
"managed_accounts_are_not_allowed"
]
},
{
"name": "Validate only portfolio lead has portfolio setting",
"description": "Validates that if portfolio settings are provided, then the account is marked as the portfolio lead.",
"possible_errors": [
"portfolio_settings_included_when_not_lead"
]
},
{
"name": "Validate business type and company number not provided for domestic accounts",
"description": "Validate that neither a business type or company number are provided for domestic accounts.",
"possible_errors": [
"business_fields_provided_for_domestic_accounts"
]
},
{
"name": "Validate no customers for unknown occupier",
"description": "Validate that no customers are provided for an unknown occupier.",
"possible_errors": [
"customer_with_unknown_occupier"
]
},
{
"name": "Validate that a customer given name is provided for business accounts",
"description": "Validate that a given name is provided for all customers on a business account. Note that this validation only applies if Kraken is configured to send registration flows for this import supplier.",
"possible_errors": [
"customer_given_name_required"
]
},
{
"name": "Validate portfolio reference provided correctly",
"description": "Validate that a portfolio reference is provided if portfolio settings have been provided and that a portfolio reference is not provided if the import supplier is set to create new portfolios.",
"possible_errors": [
"portfolio_references_missing",
"portfolio_references_provided"
]
},
{
"name": "Validate billing address style",
"description": "Validate that a legacy billing address (<code>billing_address1</code> etc.) and new-style billing address (<code>billing_address</code> object) are not both provided.",
"possible_errors": [
"billing_address_new_style_and_legacy"
]
},
{
"name": "Validate contracts are consecutive per supply point",
"description": "Validate that the contracts provided in the payload are consecutive per supply point i.e. there are no gaps or overlaps. The exception to this is for contracts provided before the current supply period for the supply point. Contracts provided before the <code>supply_start_date</code> are allowed gaps since they represent historic periods of supply and cannot be used for billing in Kraken.",
"possible_errors": [
"gaps_or_overlaps_in_agreement_dates"
]
},
{
"name": "Validate supply charge line items covered by a single agreement",
"description": "Validate each supply charge has a single agreement with matching product code that covers the period defined by it's line items minimum <code>start_date</code> to maximum <code>end_date</code>.",
"possible_errors": [
"supply_charge_line_items_not_covered_by_single_agreement"
]
},
{
"name": "Validate that Kraken can calculate when to start billing the account",
"description": "Validate that Kraken can calculate when to start billing the account. This is determined based on the existence of last billed to date, last statement closing date, and agreements.",
"possible_errors": [
"cannot_determine_responsible_for_billing_from_date"
]
},
{
"name": "Validate historical statement period end must not be in the future",
"description": "Ensures that the historical statement period end date (last_statement_closing_date or latest transaction_date) is not set in the future.",
"possible_errors": [
"historical_statement_period_end_in_future"
]
},
{
"name": "Validate that terms with supply type matches a supply point supply type",
"description": "Validate that for terms containing a <code>supply_type</code> field that there is a supply point in the payload with a matching <code>supply_type</code>.",
"possible_errors": [
"term_supply_type_mismatch"
]
},
{
"name": "Validate that supply addresses and supply points are provided if account contracts are provided",
"description": "Validate that if <code>account_contracts</code> have been provided that a supply address with supply points has been provided under <code>supply_addresses</code>",
"possible_errors": [
"account_contracts_without_supply_points"
]
},
{
"name": "Validate historical statement billing document identifier presence",
"description": "Ensure that billing document identifiers are only provided for historical statement transactions and only when the relevant feature flag is enabled.",
"possible_errors": [
"historical_statement_billing_document_identifier_missing",
"historical_statement_billing_document_identifier_not_allowed_when_feature_flag_disabled"
]
},
{
"name": "Validate current statement transactions do not provide <code>billing_document_identifier</code>",
"description": "Validate that none of the current statement transactions include a <code>billing_document_identifier</code>, as this field is only applicable to historical statement transactions.",
"possible_errors": [
"billing_document_identifier_not_allowed_for_current_statement_transactions"
]
},
{
"name": "Validate historical statement transaction billing document identifier",
"description": "Ensure that the billing document identifier is the same for all historical statement transactions.",
"possible_errors": [
"historical_statement_billing_document_identifier_mismatch"
]
},
{
"name": "Validate that contract terms' product codes are part of supply agreements",
"description": "Ensure that any contract terms with product references have corresponding products in supply addresses.",
"possible_errors": [
"contract_term_product_code_not_in_agreements"
]
},
{
"name": "Validate that business is provided if enforcing business contracts",
"description": "Validate that the business field is provided if <code>enforce_business_contracts_exist</code> is set to True on the import supplier configuration.",
"possible_errors": [
"business_field_required"
]
},
{
"name": "Validate that the sum of ledger balances equals the transfer balance",
"description": "Validate that the sum of all <code>ledger_balance</code> provided for each ledger in <code>ledgers</code> equals the account-level <code>transfer_balance</code>.",
"possible_errors": [
"ledger_balances_not_equal_to_transfer_balance"
]
},
{
"name": "Validate business user info against customer info",
"description": "Validates that business user information matches the corresponding customer information for basic fields.",
"possible_errors": [
"customer_details_and_user_details_both_provided"
]
},
{
"name": "Validate payment preference <code>ledger_identifier</code>",
"description": "Ensure that the <code>ledger_identifier</code> provided has an equivalent <code>ledger</code> object with the same <code>ledger_identifier</code> .",
"possible_errors": [
"invalid_payment_preference_ledger_identifier"
]
},
{
"name": "Validate that referenced ledgers are unique in payment preferences",
"description": "Ensure that each ledger is referenced in at most one payment preference.",
"possible_errors": [
"duplicate_ledger_in_payment_preferences"
]
},
{
"name": "Validate that valid instruction_identifier provided for <code>ACTIVE_NEW</code> payment preference",
"description": "Ensure that <code>ACTIVE_NEW</code> payment preference has instruction_identifier from </code>payment_instructions</code> object.",
"possible_errors": [
"active_new_payment_preference_invalid_instruction_identifier"
]
},
{
"name": "Validate that the transactions for a voucher do not exceed its value",
"description": "Validate that the sum of all transaction values for a voucher is not greater than the value of the voucher.",
"possible_errors": [
"voucher_transactions_sum_greater_than_voucher_value"
]
},
{
"name": "Validate that each voucher charge transaction id has a matching transaction id within a transaction of type CHARGE",
"description": "Validate that each <code>voucher</code> <code>charge_transaction_id</code> has a matching <code>transaction_id</code> within a transaction of <code>type</code> CHARGE in <code>current_statement_transactions</code>, <code>historical_statement_transactions</code> or <code>historical_billing_documents</code>.",
"possible_errors": [
"voucher_charge_transaction_id_not_found"
]
},
{
"name": "Validate that each voucher redemption credit transaction id has a matching transaction id within a transaction of type CREDIT",
"description": "Validate that every <code>credit_transaction_id</code> in all <code>voucher_redemptions</code> in every <code>voucher</code> has a matching <code>transaction_id</code> within a transaction of <code>type</code> CREDIT in <code>current_statement_transactions</code>, <code>historical_statement_transactions</code> or <code>historical_billing_documents</code>.",
"possible_errors": [
"voucher_redemption_credit_transaction_id_not_found"
]
},
{
"name": "Validate exactly one property for service agreement property association",
"description": "Validates that exactly one supply address is provided when there are service agreements with products that require property association.",
"possible_errors": [
"service_agreement_requires_supply_address"
]
},
{
"name": "Validate ledger identifiers are known",
"description": "Validate ledger identifiers are among supply point identifiers.",
"possible_errors": [
"unknown_ledger_identifiers"
]
},
{
"name": "Validate identifiers are unique in ledgers",
"description": "Validate identifier is not declared twice in ledgers.",
"possible_errors": [
"duplicate_identifiers_entries_found"
]
},
{
"name": "Validate agreements cover last statement closing date",
"description": "Validate that there is an agreement for each supply point covering each ledger's <code>last_statement_closing_date</code>.",
"possible_errors": [
"no_agreement_covering_last_statement_closing_date"
]
},
{
"name": "Validate no unbilled period on former supply addresses",
"description": "Validate that if a customer is no longer at the given supply address they have been fully billed. This check is performed if we are importing supply address history.",
"possible_errors": [
"unbilled_former_supply_address"
]
},
{
"name": "Validate company number provided for business account",
"description": "Validate that a business account has company number provided.",
"possible_errors": [
"company_number_required_for_business_account"
]
}
]18 February 2026
New
{
"x-validators": [
{
"name": "Validate line item periods",
"description": "Validate that no line items overlap (checked per supply point, product, and rate band combination) or have gaps (checked per supply point only) in supply charge transactions.",
"possible_errors": [
"gaps_or_overlaps_in_periods"
]
}
]
}Old
{
"x-validators": [
{
"name": "Validate line item periods",
"description": "Validate that no line items overlap (checked per supply point, product, and rate band combination) or have gaps (checked per supply point only) in supply charge transactions.",
"possible_errors": [
"zero_length_periods",
"gaps_or_overlaps_in_periods"
]
}
]
}New
{
"x-validators": [
{
"name": "Validate line item periods",
"description": "Validate that no line items overlap (checked per supply point, product, and rate band combination) or have gaps (checked per supply point only) in supply charge transactions.",
"possible_errors": [
"gaps_or_overlaps_in_periods"
]
}
]
}Old
{
"x-validators": [
{
"name": "Validate line item periods",
"description": "Validate that no line items overlap (checked per supply point, product, and rate band combination) or have gaps (checked per supply point only) in supply charge transactions.",
"possible_errors": [
"zero_length_periods",
"gaps_or_overlaps_in_periods"
]
}
]
}