{"openapi":"3.1.0","info":{"title":"MT940 Reconciliation API","description":"Reconcile SWIFT MT940 bank statements against bank mutation export CSV and GDS (Google Data Studio) exports. Use POST /api/v1/reconcile/compare with comparison_mode for MT940 vs Mutation, MT940 vs Mutation vs GDS, MT940 vs GDS, or Mutation vs GDS. Legacy /reconcile and /reconcile/full endpoints remain available. Matching uses payment date, amount, and virtual account number.","version":"1.0.0"},"paths":{"/health":{"get":{"tags":["system"],"summary":"Health","description":"Public liveness check.","operationId":"health_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":{"type":"string"},"type":"object","title":"Response Health Health Get"}}}}}}},"/api/v1/schema":{"get":{"tags":["reconciliation","config"],"summary":"Get Schema","description":"Return active CSV/MT940 column mapping and reconciliation settings.","operationId":"get_schema_api_v1_schema_get","parameters":[{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SchemaResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/reconcile/compare":{"post":{"tags":["reconciliation","reconciliation"],"summary":"Reconcile Compare","description":"Run one of the supported comparison modes and return mode-specific JSON output.","operationId":"reconcile_compare_api_v1_reconcile_compare_post","parameters":[{"name":"comparison_mode","in":"query","required":true,"schema":{"enum":["mt940_mutation","mt940_mutation_gds","mt940_gds","mutation_gds"],"type":"string","description":"Comparison type to run","title":"Comparison Mode"},"description":"Comparison type to run"},{"name":"status","in":"query","required":false,"schema":{"enum":["all","matched","mt940_only","mutation_only","gds_only","csv_only","duplicate"],"type":"string","description":"Filter pair-comparison results by status","default":"all","title":"Status"},"description":"Filter pair-comparison results by status"},{"name":"bank_status","in":"query","required":false,"schema":{"enum":["all","matched","mt940_only","mutation_only","csv_only","duplicate"],"type":"string","description":"Filter bank alignment results (full comparison only)","default":"all","title":"Bank Status"},"description":"Filter bank alignment results (full comparison only)"},{"name":"mt940_gds_status","in":"query","required":false,"schema":{"enum":["all","matched","mt940_only","gds_only","csv_only","duplicate"],"type":"string","description":"Filter MT940 vs GDS results (full comparison only)","default":"all","title":"Mt940 Gds Status"},"description":"Filter MT940 vs GDS results (full comparison only)"},{"name":"mutation_gds_status","in":"query","required":false,"schema":{"enum":["all","matched","mutation_only","gds_only","csv_only","duplicate"],"type":"string","description":"Filter mutation vs GDS results (full comparison only)","default":"all","title":"Mutation Gds Status"},"description":"Filter mutation vs GDS results (full comparison only)"},{"name":"credits_only","in":"query","required":false,"schema":{"type":"boolean","description":"Include only credit transactions (amount > 0)","default":true,"title":"Credits Only"},"description":"Include only credit transactions (amount > 0)"},{"name":"include_results","in":"query","required":false,"schema":{"type":"boolean","description":"Include transaction-level results; when false, only summary is returned","default":true,"title":"Include Results"},"description":"Include transaction-level results; when false, only summary is returned"},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_reconcile_compare_api_v1_reconcile_compare_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompareResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/reconcile/compare/export/xlsx":{"post":{"tags":["reconciliation","export"],"summary":"Export Compare Xlsx Endpoint","description":"Run a comparison mode and download an Excel report.","operationId":"export_compare_xlsx_endpoint_api_v1_reconcile_compare_export_xlsx_post","parameters":[{"name":"comparison_mode","in":"query","required":true,"schema":{"enum":["mt940_mutation","mt940_mutation_gds","mt940_gds","mutation_gds"],"type":"string","description":"Comparison type to run","title":"Comparison Mode"},"description":"Comparison type to run"},{"name":"credits_only","in":"query","required":false,"schema":{"type":"boolean","description":"Include only credit transactions","default":true,"title":"Credits Only"},"description":"Include only credit transactions"},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_export_compare_xlsx_endpoint_api_v1_reconcile_compare_export_xlsx_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/reconcile/compare/export/csv":{"post":{"tags":["reconciliation","export"],"summary":"Export Compare Csv Endpoint","description":"Run a comparison mode and export a filtered result set as CSV.","operationId":"export_compare_csv_endpoint_api_v1_reconcile_compare_export_csv_post","parameters":[{"name":"comparison_mode","in":"query","required":true,"schema":{"enum":["mt940_mutation","mt940_mutation_gds","mt940_gds","mutation_gds"],"type":"string","description":"Comparison type to run","title":"Comparison Mode"},"description":"Comparison type to run"},{"name":"status","in":"query","required":false,"schema":{"enum":["matched","mt940_only","mutation_only","gds_only","csv_only","duplicate"],"type":"string","description":"Which pair-comparison result set to export","default":"matched","title":"Status"},"description":"Which pair-comparison result set to export"},{"name":"section","in":"query","required":false,"schema":{"enum":["missing_from_gds","gds_only","bank_matched","bank_mt940_only","bank_mutation_only","mt940_gds_matched","mt940_missing_from_gds","mutation_gds_matched","mutation_missing_from_gds"],"type":"string","description":"Which full-comparison result set to export","default":"missing_from_gds","title":"Section"},"description":"Which full-comparison result set to export"},{"name":"credits_only","in":"query","required":false,"schema":{"type":"boolean","description":"Include only credit transactions","default":true,"title":"Credits Only"},"description":"Include only credit transactions"},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_export_compare_csv_endpoint_api_v1_reconcile_compare_export_csv_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/reconcile":{"post":{"tags":["reconciliation","reconciliation"],"summary":"Reconcile Files","description":"Upload MT940 + bank mutation export, reconcile transactions, and return JSON results.","operationId":"reconcile_files_api_v1_reconcile_post","parameters":[{"name":"status","in":"query","required":false,"schema":{"enum":["all","matched","mt940_only","mutation_only","csv_only","duplicate"],"type":"string","description":"Filter results by status (csv_only is deprecated alias for mutation_only)","default":"all","title":"Status"},"description":"Filter results by status (csv_only is deprecated alias for mutation_only)"},{"name":"credits_only","in":"query","required":false,"schema":{"type":"boolean","description":"Include only credit transactions (amount > 0) on both sides","default":true,"title":"Credits Only"},"description":"Include only credit transactions (amount > 0) on both sides"},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_reconcile_files_api_v1_reconcile_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReconcileResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/reconcile/export/xlsx":{"post":{"tags":["reconciliation","export"],"summary":"Export Xlsx","description":"Run reconciliation and download a multi-sheet Excel report.","operationId":"export_xlsx_api_v1_reconcile_export_xlsx_post","parameters":[{"name":"credits_only","in":"query","required":false,"schema":{"type":"boolean","description":"Include only credit transactions","default":true,"title":"Credits Only"},"description":"Include only credit transactions"},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_export_xlsx_api_v1_reconcile_export_xlsx_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/reconcile/export/csv":{"post":{"tags":["reconciliation","export"],"summary":"Export Csv","description":"Run reconciliation and export a filtered result set as CSV.","operationId":"export_csv_api_v1_reconcile_export_csv_post","parameters":[{"name":"status","in":"query","required":false,"schema":{"enum":["matched","mt940_only","mutation_only","csv_only","duplicate"],"type":"string","description":"Which result set to export (csv_only is deprecated alias for mutation_only)","default":"matched","title":"Status"},"description":"Which result set to export (csv_only is deprecated alias for mutation_only)"},{"name":"credits_only","in":"query","required":false,"schema":{"type":"boolean","description":"Include only credit transactions","default":true,"title":"Credits Only"},"description":"Include only credit transactions"},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_export_csv_api_v1_reconcile_export_csv_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/reconcile/full":{"post":{"tags":["reconciliation","reconciliation"],"summary":"Reconcile Full","description":"Upload MT940 + bank mutation export + GDS export; reconcile bank truth vs GDS records.","operationId":"reconcile_full_api_v1_reconcile_full_post","parameters":[{"name":"bank_status","in":"query","required":false,"schema":{"enum":["all","matched","mt940_only","mutation_only","csv_only","duplicate"],"type":"string","description":"Filter bank alignment results by status","default":"all","title":"Bank Status"},"description":"Filter bank alignment results by status"},{"name":"mt940_gds_status","in":"query","required":false,"schema":{"enum":["all","matched","mt940_only","mutation_only","csv_only","duplicate"],"type":"string","description":"Filter MT940 vs GDS results by status","default":"all","title":"Mt940 Gds Status"},"description":"Filter MT940 vs GDS results by status"},{"name":"mutation_gds_status","in":"query","required":false,"schema":{"enum":["all","matched","mt940_only","mutation_only","csv_only","duplicate"],"type":"string","description":"Filter bank mutation vs GDS results by status","default":"all","title":"Mutation Gds Status"},"description":"Filter bank mutation vs GDS results by status"},{"name":"credits_only","in":"query","required":false,"schema":{"type":"boolean","description":"Include only credit transactions (amount > 0) on all sides","default":true,"title":"Credits Only"},"description":"Include only credit transactions (amount > 0) on all sides"},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_reconcile_full_api_v1_reconcile_full_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FullReconcileResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/reconcile/full/export/xlsx":{"post":{"tags":["reconciliation","export"],"summary":"Export Full Xlsx","description":"Run full reconciliation and download a multi-sheet Excel report.","operationId":"export_full_xlsx_api_v1_reconcile_full_export_xlsx_post","parameters":[{"name":"credits_only","in":"query","required":false,"schema":{"type":"boolean","description":"Include only credit transactions","default":true,"title":"Credits Only"},"description":"Include only credit transactions"},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_export_full_xlsx_api_v1_reconcile_full_export_xlsx_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/reconcile/full/export/csv":{"post":{"tags":["reconciliation","export"],"summary":"Export Full Csv","description":"Run full reconciliation and export a filtered result set as CSV.","operationId":"export_full_csv_api_v1_reconcile_full_export_csv_post","parameters":[{"name":"section","in":"query","required":false,"schema":{"enum":["missing_from_gds","gds_only","bank_matched","bank_mt940_only","bank_mutation_only","mt940_gds_matched","mt940_missing_from_gds","mutation_gds_matched","mutation_missing_from_gds"],"type":"string","description":"Which result set to export","default":"missing_from_gds","title":"Section"},"description":"Which result set to export"},{"name":"credits_only","in":"query","required":false,"schema":{"type":"boolean","description":"Include only credit transactions","default":true,"title":"Credits Only"},"description":"Include only credit transactions"},{"name":"X-API-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"X-Api-Key"}}],"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_export_full_csv_api_v1_reconcile_full_export_csv_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"Body_export_compare_csv_endpoint_api_v1_reconcile_compare_export_csv_post":{"properties":{"mt940_file":{"anyOf":[{"type":"string","contentMediaType":"application/octet-stream"},{"type":"null"}],"title":"Mt940 File","description":"SWIFT MT940 bank statement file"},"mutation_csv_file":{"anyOf":[{"type":"string","contentMediaType":"application/octet-stream"},{"type":"null"}],"title":"Mutation Csv File","description":"Bank mutation export CSV"},"gds_csv_file":{"anyOf":[{"type":"string","contentMediaType":"application/octet-stream"},{"type":"null"}],"title":"Gds Csv File","description":"GDS export CSV (Google Data Studio)"}},"type":"object","title":"Body_export_compare_csv_endpoint_api_v1_reconcile_compare_export_csv_post"},"Body_export_compare_xlsx_endpoint_api_v1_reconcile_compare_export_xlsx_post":{"properties":{"mt940_file":{"anyOf":[{"type":"string","contentMediaType":"application/octet-stream"},{"type":"null"}],"title":"Mt940 File","description":"SWIFT MT940 bank statement file"},"mutation_csv_file":{"anyOf":[{"type":"string","contentMediaType":"application/octet-stream"},{"type":"null"}],"title":"Mutation Csv File","description":"Bank mutation export CSV"},"gds_csv_file":{"anyOf":[{"type":"string","contentMediaType":"application/octet-stream"},{"type":"null"}],"title":"Gds Csv File","description":"GDS export CSV (Google Data Studio)"}},"type":"object","title":"Body_export_compare_xlsx_endpoint_api_v1_reconcile_compare_export_xlsx_post"},"Body_export_csv_api_v1_reconcile_export_csv_post":{"properties":{"mt940_file":{"type":"string","contentMediaType":"application/octet-stream","title":"Mt940 File","description":"SWIFT MT940 bank statement file"},"mutation_csv_file":{"type":"string","contentMediaType":"application/octet-stream","title":"Mutation Csv File","description":"Bank mutation export CSV"}},"type":"object","required":["mt940_file","mutation_csv_file"],"title":"Body_export_csv_api_v1_reconcile_export_csv_post"},"Body_export_full_csv_api_v1_reconcile_full_export_csv_post":{"properties":{"mt940_file":{"type":"string","contentMediaType":"application/octet-stream","title":"Mt940 File","description":"SWIFT MT940 bank statement file"},"mutation_csv_file":{"type":"string","contentMediaType":"application/octet-stream","title":"Mutation Csv File","description":"Bank mutation export CSV"},"gds_csv_file":{"type":"string","contentMediaType":"application/octet-stream","title":"Gds Csv File","description":"GDS export CSV (Google Data Studio)"}},"type":"object","required":["mt940_file","mutation_csv_file","gds_csv_file"],"title":"Body_export_full_csv_api_v1_reconcile_full_export_csv_post"},"Body_export_full_xlsx_api_v1_reconcile_full_export_xlsx_post":{"properties":{"mt940_file":{"type":"string","contentMediaType":"application/octet-stream","title":"Mt940 File","description":"SWIFT MT940 bank statement file"},"mutation_csv_file":{"type":"string","contentMediaType":"application/octet-stream","title":"Mutation Csv File","description":"Bank mutation export CSV"},"gds_csv_file":{"type":"string","contentMediaType":"application/octet-stream","title":"Gds Csv File","description":"GDS export CSV (Google Data Studio)"}},"type":"object","required":["mt940_file","mutation_csv_file","gds_csv_file"],"title":"Body_export_full_xlsx_api_v1_reconcile_full_export_xlsx_post"},"Body_export_xlsx_api_v1_reconcile_export_xlsx_post":{"properties":{"mt940_file":{"type":"string","contentMediaType":"application/octet-stream","title":"Mt940 File","description":"SWIFT MT940 bank statement file"},"mutation_csv_file":{"type":"string","contentMediaType":"application/octet-stream","title":"Mutation Csv File","description":"Bank mutation export CSV"}},"type":"object","required":["mt940_file","mutation_csv_file"],"title":"Body_export_xlsx_api_v1_reconcile_export_xlsx_post"},"Body_reconcile_compare_api_v1_reconcile_compare_post":{"properties":{"mt940_file":{"anyOf":[{"type":"string","contentMediaType":"application/octet-stream"},{"type":"null"}],"title":"Mt940 File","description":"SWIFT MT940 bank statement file"},"mutation_csv_file":{"anyOf":[{"type":"string","contentMediaType":"application/octet-stream"},{"type":"null"}],"title":"Mutation Csv File","description":"Bank mutation export CSV"},"gds_csv_file":{"anyOf":[{"type":"string","contentMediaType":"application/octet-stream"},{"type":"null"}],"title":"Gds Csv File","description":"GDS export CSV (Google Data Studio)"}},"type":"object","title":"Body_reconcile_compare_api_v1_reconcile_compare_post"},"Body_reconcile_files_api_v1_reconcile_post":{"properties":{"mt940_file":{"type":"string","contentMediaType":"application/octet-stream","title":"Mt940 File","description":"SWIFT MT940 bank statement file"},"mutation_csv_file":{"type":"string","contentMediaType":"application/octet-stream","title":"Mutation Csv File","description":"Bank mutation export CSV"}},"type":"object","required":["mt940_file","mutation_csv_file"],"title":"Body_reconcile_files_api_v1_reconcile_post"},"Body_reconcile_full_api_v1_reconcile_full_post":{"properties":{"mt940_file":{"type":"string","contentMediaType":"application/octet-stream","title":"Mt940 File","description":"SWIFT MT940 bank statement file"},"mutation_csv_file":{"type":"string","contentMediaType":"application/octet-stream","title":"Mutation Csv File","description":"Bank mutation export CSV"},"gds_csv_file":{"type":"string","contentMediaType":"application/octet-stream","title":"Gds Csv File","description":"GDS export CSV (Google Data Studio)"}},"type":"object","required":["mt940_file","mutation_csv_file","gds_csv_file"],"title":"Body_reconcile_full_api_v1_reconcile_full_post"},"CompareResponse":{"properties":{"comparison_mode":{"type":"string","enum":["mt940_mutation","mt940_mutation_gds","mt940_gds","mutation_gds"],"title":"Comparison Mode"},"comparison_label":{"type":"string","title":"Comparison Label"},"summary":{"anyOf":[{"$ref":"#/components/schemas/SummaryResponse"},{"$ref":"#/components/schemas/FullSummaryResponse"}],"title":"Summary"},"gds_merchant_summary":{"items":{"$ref":"#/components/schemas/GdsMerchantSummaryItem"},"type":"array","title":"Gds Merchant Summary"},"mt940_mutation":{"anyOf":[{"$ref":"#/components/schemas/ReconcileResponse"},{"type":"null"}]},"mt940_mutation_gds":{"anyOf":[{"$ref":"#/components/schemas/FullReconcileResponse"},{"type":"null"}]},"mt940_gds":{"anyOf":[{"$ref":"#/components/schemas/Mt940GdsReconcileResponse"},{"type":"null"}]},"mutation_gds":{"anyOf":[{"$ref":"#/components/schemas/MutationGdsReconcileResponse"},{"type":"null"}]}},"type":"object","required":["comparison_mode","comparison_label","summary"],"title":"CompareResponse"},"ComparisonModeInfo":{"properties":{"mode":{"type":"string","enum":["mt940_mutation","mt940_mutation_gds","mt940_gds","mutation_gds"],"title":"Mode"},"label":{"type":"string","title":"Label"},"requires_mt940":{"type":"boolean","title":"Requires Mt940"},"requires_mutation":{"type":"boolean","title":"Requires Mutation"},"requires_gds":{"type":"boolean","title":"Requires Gds"}},"type":"object","required":["mode","label","requires_mt940","requires_mutation","requires_gds"],"title":"ComparisonModeInfo"},"ConsolidatedMissingResponse":{"properties":{"date":{"type":"string","title":"Date"},"amount":{"type":"number","title":"Amount"},"va_number":{"type":"string","title":"Va Number"},"reference":{"type":"string","title":"Reference"},"description":{"type":"string","title":"Description"},"sources":{"items":{"type":"string"},"type":"array","title":"Sources"}},"type":"object","required":["date","amount","va_number","reference","description","sources"],"title":"ConsolidatedMissingResponse"},"FullReconcileResponse":{"properties":{"summary":{"$ref":"#/components/schemas/FullSummaryResponse"},"bank":{"$ref":"#/components/schemas/ReconcileResponse"},"mt940_gds":{"$ref":"#/components/schemas/Mt940GdsReconcileResponse"},"mutation_gds":{"$ref":"#/components/schemas/MutationGdsReconcileResponse"},"missing_from_gds":{"items":{"$ref":"#/components/schemas/ConsolidatedMissingResponse"},"type":"array","title":"Missing From Gds"}},"type":"object","required":["summary","bank","mt940_gds","mutation_gds","missing_from_gds"],"title":"FullReconcileResponse"},"FullSummaryResponse":{"properties":{"bank_matched_count":{"type":"integer","title":"Bank Matched Count"},"bank_mt940_only_count":{"type":"integer","title":"Bank Mt940 Only Count"},"bank_mutation_only_count":{"type":"integer","title":"Bank Mutation Only Count"},"mt940_gds_matched_count":{"type":"integer","title":"Mt940 Gds Matched Count"},"mt940_missing_from_gds_count":{"type":"integer","title":"Mt940 Missing From Gds Count"},"mutation_gds_matched_count":{"type":"integer","title":"Mutation Gds Matched Count"},"mutation_missing_from_gds_count":{"type":"integer","title":"Mutation Missing From Gds Count"},"consolidated_missing_count":{"type":"integer","title":"Consolidated Missing Count"},"gds_only_count":{"type":"integer","title":"Gds Only Count"}},"type":"object","required":["bank_matched_count","bank_mt940_only_count","bank_mutation_only_count","mt940_gds_matched_count","mt940_missing_from_gds_count","mutation_gds_matched_count","mutation_missing_from_gds_count","consolidated_missing_count","gds_only_count"],"title":"FullSummaryResponse"},"GdsMerchantSummaryItem":{"properties":{"label":{"type":"string","title":"Label"},"count":{"type":"integer","title":"Count"},"amount":{"type":"number","title":"Amount"}},"type":"object","required":["label","count","amount"],"title":"GdsMerchantSummaryItem"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"MatchResultResponse":{"properties":{"status":{"type":"string","enum":["matched","mt940_only","csv_only","mutation_only","duplicate"],"title":"Status"},"note":{"type":"string","title":"Note","default":""},"mt940":{"anyOf":[{"$ref":"#/components/schemas/TransactionResponse"},{"type":"null"}]},"mutation":{"anyOf":[{"$ref":"#/components/schemas/TransactionResponse"},{"type":"null"}]}},"type":"object","required":["status"],"title":"MatchResultResponse"},"Mt940GdsMatchResultResponse":{"properties":{"status":{"type":"string","enum":["matched","mt940_only","gds_only","duplicate"],"title":"Status"},"note":{"type":"string","title":"Note","default":""},"mt940":{"anyOf":[{"$ref":"#/components/schemas/TransactionResponse"},{"type":"null"}]},"gds":{"anyOf":[{"$ref":"#/components/schemas/TransactionResponse"},{"type":"null"}]}},"type":"object","required":["status"],"title":"Mt940GdsMatchResultResponse"},"Mt940GdsReconcileResponse":{"properties":{"summary":{"$ref":"#/components/schemas/SummaryResponse"},"results":{"items":{"$ref":"#/components/schemas/Mt940GdsMatchResultResponse"},"type":"array","title":"Results"}},"type":"object","required":["summary","results"],"title":"Mt940GdsReconcileResponse"},"MutationGdsMatchResultResponse":{"properties":{"status":{"type":"string","enum":["matched","mutation_only","gds_only","duplicate"],"title":"Status"},"note":{"type":"string","title":"Note","default":""},"mutation":{"anyOf":[{"$ref":"#/components/schemas/TransactionResponse"},{"type":"null"}]},"gds":{"anyOf":[{"$ref":"#/components/schemas/TransactionResponse"},{"type":"null"}]}},"type":"object","required":["status"],"title":"MutationGdsMatchResultResponse"},"MutationGdsReconcileResponse":{"properties":{"summary":{"$ref":"#/components/schemas/SummaryResponse"},"results":{"items":{"$ref":"#/components/schemas/MutationGdsMatchResultResponse"},"type":"array","title":"Results"}},"type":"object","required":["summary","results"],"title":"MutationGdsReconcileResponse"},"ReconcileResponse":{"properties":{"summary":{"$ref":"#/components/schemas/SummaryResponse"},"results":{"items":{"$ref":"#/components/schemas/MatchResultResponse"},"type":"array","title":"Results"}},"type":"object","required":["summary","results"],"title":"ReconcileResponse"},"SchemaResponse":{"properties":{"match_key":{"items":{"type":"string"},"type":"array","title":"Match Key"},"comparison_modes":{"items":{"$ref":"#/components/schemas/ComparisonModeInfo"},"type":"array","title":"Comparison Modes"},"mutation_csv_columns":{"additionalProperties":{"type":"string"},"type":"object","title":"Mutation Csv Columns"},"gds_csv_columns":{"additionalProperties":{"type":"string"},"type":"object","title":"Gds Csv Columns"},"mt940_detail_columns":{"additionalProperties":{"type":"string"},"type":"object","title":"Mt940 Detail Columns"},"mutation_date_format":{"type":"string","title":"Mutation Date Format"},"gds_date_format":{"type":"string","title":"Gds Date Format"},"mutation_amount_mode":{"type":"string","title":"Mutation Amount Mode"},"gds_amount_mode":{"type":"string","title":"Gds Amount Mode"},"mutation_va_from_description":{"type":"boolean","title":"Mutation Va From Description"},"credits_only_default":{"type":"boolean","title":"Credits Only Default"},"mt940_credits_only":{"type":"boolean","title":"Mt940 Credits Only"},"mt940_require_va_number":{"type":"boolean","title":"Mt940 Require Va Number"}},"type":"object","required":["comparison_modes","mutation_csv_columns","gds_csv_columns","mt940_detail_columns","mutation_date_format","gds_date_format","mutation_amount_mode","gds_amount_mode","mutation_va_from_description","credits_only_default","mt940_credits_only","mt940_require_va_number"],"title":"SchemaResponse"},"SummaryResponse":{"properties":{"mt940_count":{"type":"integer","title":"Mt940 Count"},"csv_count":{"type":"integer","title":"Csv Count"},"matched_count":{"type":"integer","title":"Matched Count"},"mt940_only_count":{"type":"integer","title":"Mt940 Only Count"},"csv_only_count":{"type":"integer","title":"Csv Only Count"},"duplicate_count":{"type":"integer","title":"Duplicate Count"},"matched_amount":{"type":"number","title":"Matched Amount"},"opening_balance":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Opening Balance"},"closing_balance":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Closing Balance"},"mt940_parsed_count":{"type":"integer","title":"Mt940 Parsed Count"},"mt940_excluded_count":{"type":"integer","title":"Mt940 Excluded Count"},"mt940_excluded_debits":{"type":"integer","title":"Mt940 Excluded Debits"},"mt940_excluded_missing_va":{"type":"integer","title":"Mt940 Excluded Missing Va"},"csv_parsed_count":{"type":"integer","title":"Csv Parsed Count"},"csv_excluded_count":{"type":"integer","title":"Csv Excluded Count"},"csv_excluded_debits":{"type":"integer","title":"Csv Excluded Debits"},"csv_excluded_missing_va":{"type":"integer","title":"Csv Excluded Missing Va"},"csv_match_rate":{"type":"number","title":"Csv Match Rate"},"mt940_match_rate":{"type":"number","title":"Mt940 Match Rate"}},"type":"object","required":["mt940_count","csv_count","matched_count","mt940_only_count","csv_only_count","duplicate_count","matched_amount","mt940_parsed_count","mt940_excluded_count","mt940_excluded_debits","mt940_excluded_missing_va","csv_parsed_count","csv_excluded_count","csv_excluded_debits","csv_excluded_missing_va","csv_match_rate","mt940_match_rate"],"title":"SummaryResponse"},"TransactionResponse":{"properties":{"date":{"type":"string","title":"Date"},"amount":{"type":"number","title":"Amount"},"va_number":{"type":"string","title":"Va Number"},"reference":{"type":"string","title":"Reference"},"description":{"type":"string","title":"Description"},"merchant_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Merchant Name"},"esb_reference":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Esb Reference"}},"type":"object","required":["date","amount","va_number","reference","description"],"title":"TransactionResponse"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"tags":[{"name":"reconciliation","description":"Upload files and reconcile transactions"},{"name":"export","description":"Download reconciliation results"},{"name":"config","description":"Active schema and matching configuration"}]}