{"openapi":"3.0.0","externalDocs":{"description":"Documentation","url":"https://docs.saltedge.com/v6"},"info":{"version":"6.0.0","title":"Salt Edge Account Information and Payment Initiation API","description":"API Reference for v6","contact":{"name":"Support Team","email":"support@saltedge.com","url":"https://www.saltedge.com/pages/contact"}},"servers":[{"url":"https://www.saltedge.com/api/v6"}],"security":[{"app_id":[],"secret":[]}],"paths":{"/accounts":{"get":{"summary":"List of accounts","description":"You can see the list of accounts of a connection.","tags":["Accounts"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccountsResponse"},"example":{"data":[{"id":"1111111111111111111","connection_id":"1111111111111111111","name":"Simple account 1 MasterCard","nature":"card","balance":2007.9,"currency_code":"EUR","extra":{"iban":"DE5555555555555555555555","swift":"ABCDEFGH","status":"active","card_type":"master_card","sort_code":"65-43-21","holder_name":"John DOE","account_name":"123456","current_date":"2021-09-14","current_time":"18:04:00","account_number":"123456","transactions_count":{"posted":4,"pending":0},"updated_on_last_attempt":true},"created_at":"2021-09-14T18:04:48Z","updated_at":"2021-09-14T18:04:48Z"},{"id":"2222222222222222222","connection_id":"1111111111111111111","name":"Simple account 2","nature":"account","balance":2012.14,"currency_code":"USD","extra":{"iban":"DE77777777777777","cards":["1234....5678","*8765"],"swift":"ABCDEFGJ","status":"active","sort_code":"65-43-22","holder_name":"John Doe","account_name":"123457","current_date":"2021-09-14","current_time":"18:04:00","account_number":"123457","transactions_count":{"posted":5,"pending":0},"updated_on_last_attempt":false},"created_at":"2021-09-14T18:04:48Z","updated_at":"2021-09-14T18:04:48Z"}],"meta":{"next_id":"3333333333333333333","next_page":"/api/v6/accounts?connection_id=1111111111111111111\u0026from_id=3333333333333333333"}}}}},"404":{"description":"The User with the provided `customer_id` does not exist","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Some parameters or the entire JSON request are in the wrong format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"in":"query","name":"connection_id","required":false,"schema":{"type":"string","format":"integer","description":"The `id` of the Connection. Mandatory if `customer_id` is not provided."}},{"in":"query","name":"customer_id","required":false,"schema":{"type":"string","format":"integer","description":"A unique `id` of the User assigned by Salt Edge. Mandatory if `connection_id` is not provided."}},{"in":"query","name":"from_id","required":false,"schema":{"type":"string","format":"integer","description":"The `id` of the Account the list starts with"}},{"in":"query","name":"per_page","required":false,"schema":{"type":"integer","description":"The nr. of Accounts to be listed per page"}}]}},"/connections":{"get":{"summary":"List of connections","description":"Returns all the connections accessible to your application for a certain customer.\nThe connections are sorted in ascending order of their `id`, so the newest connections will come last.\nWe recommend you fetch the whole list of connections to check whether any of the properties have changed.\n","tags":["Connections"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionsResponse"},"example":{"data":[{"id":"1111111111111111111","customer_id":"1111111111111111111","customer_identifier":"example_identifier","provider_code":"fake_oauth_client_xf","provider_name":"Fake OAuth Bank with Client Keys","country_code":"XF","status":"active","categorization":"none","categorization_vendor":null,"automatic_refresh":true,"store_credentials":true,"next_refresh_possible_at":"2024-02-19T06:26:03Z","created_at":"2024-01-03T14:39:58Z","updated_at":"2024-02-19T06:11:03Z","last_consent_id":"1111111111111111111","last_attempt":{"id":"1111111111111111111","consent_id":"1111111111111111111","api_version":"6","api_mode":"service","automatic_fetch":true,"categorize":false,"custom_fields":{},"automatic_refresh":true,"exclude_accounts":[],"fetch_from_date":"2024-02-17","fetch_to_date":"2024-02-19","fetch_scopes":["accounts","balance","transactions"],"finished":true,"finished_recent":true,"include_natures":null,"interactive":false,"locale":"ro","partial":false,"show_consent_confirmation":true,"store_credentials":true,"user_present":false,"user_agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:121.0) Gecko/20100101 Firefox/121.0","device_type":"desktop","remote_ip":"10.9.9.9","customer_last_logged_at":null,"created_at":"2024-02-19T06:10:13Z","updated_at":"2024-02-19T06:11:03Z","success_at":"2024-02-19T06:11:03Z","fail_at":null,"fail_error_class":null,"fail_message":null,"last_stage":{"id":"1111111111111111111","name":"finish","created_at":"2024-02-19T06:11:03Z","updated_at":"2024-02-19T06:11:03Z"}}},{"id":"2222222222222222222","customer_id":"1111111111111111111","customer_identifier":"example_identifier","provider_code":"fake_oauth_client_xf","provider_name":"Fake OAuth Bank with Client Keys","country_code":"XF","status":"active","categorization":"personal","categorization_vendor":"saltedge","automatic_refresh":false,"store_credentials":true,"next_refresh_possible_at":"2024-01-15T14:10:28Z","created_at":"2024-01-03T14:58:19Z","updated_at":"2024-01-15T13:55:28Z","last_consent_id":"1111111111111111112","last_attempt":{"id":"1111111111111111112","consent_id":"1111111111111111112","api_version":"6","api_mode":"service","automatic_fetch":true,"categorize":true,"custom_fields":{},"automatic_refresh":false,"exclude_accounts":[],"fetch_from_date":"2023-11-16","fetch_to_date":"2024-01-15","fetch_scopes":["accounts","balance","holder_info","transactions"],"finished":true,"finished_recent":true,"include_natures":null,"interactive":false,"locale":"ro","partial":false,"show_consent_confirmation":true,"store_credentials":true,"user_present":true,"user_agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:120.0) Gecko/20100101 Firefox/120.0","device_type":"desktop","remote_ip":"10.9.9.9","customer_last_logged_at":null,"created_at":"2024-01-15T13:55:11Z","updated_at":"2024-01-15T13:55:28Z","success_at":"2024-01-15T13:55:28Z","fail_at":null,"fail_error_class":null,"fail_message":null,"last_stage":{"id":"1111111111111111112","name":"finish","created_at":"2024-01-15T13:55:28Z","updated_at":"2024-01-15T13:55:28Z"}}}],"meta":{"next_id":"3333333333333333333","next_page":"/api/v6/connections?customer_id=1111111111111111111\u0026from_id=3333333333333333333"}}}}},"404":{"description":"The User with the provided `customer_id` does not exist","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Some parameters or the entire JSON request are in the wrong format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"in":"query","name":"customer_id","required":true,"schema":{"type":"string","format":"integer","description":"A unique `id` of the User assigned by Salt Edge"}},{"in":"query","name":"from_id","required":false,"schema":{"type":"string","format":"integer","description":"The `id` of the Connection the list starts with"}},{"in":"query","name":"per_page","required":false,"schema":{"type":"integer","description":"The nr. of Connections to be listed [per page](/#pagination)"}}]}},"/connections/connect":{"post":{"summary":"Create a connection","description":"When not using [Salt Edge Connect](#salt_edge_connect), your app will have to pass\nthe user's values of Provider's [fields](#providers-fields) within the payload.\n\nThe credentials object should be modeled after the Provider's fields.\n","tags":["Connections"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionConnectResponse"},"example":{"data":{"expires_at":"2024-02-19T17:07:59Z","connect_url":"https://www.saltedge.com/connect?token=78abc19673b5978ec2bed15bc7b395e5f4775ccfbc78ecf45cc41e64a9ac51d46","customer_id":"1111111111111111111111"}}}}},"406":{"description":"Issues related to the certificates and/ or app ID have been detected","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"The Client does not possess a key for the selected Provider","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Some parameters or the entire JSON request are in the wrong format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateConnectionRequestBody"}}}}}},"/connections/{connection_id}/reconnect":{"post":{"summary":"Reconnect a connection","description":"In order to [reconnect](#connections-reconnect) a connection, your app needs to send the credentials object, connection's `id`, [consent object](#consents-object) and/or [attempt object](#attempts-object). This means that the consent confirmation should be handled on the client's side, and the 'access terms' the customer agreed on should be passed.\n","tags":["Connections"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionReconnectResponse"},"example":{"data":{"expires_at":"2024-02-19T17:07:59Z","connect_url":"https://www.saltedge.com/connect?token=78abc19673b5978ec2bed15bc7b395e5f4775ccfbc78ecf45cc41e64a9ac51d46","customer_id":"1111111111111111111111"}}}}},"406":{"description":"Issues related to the certificates and/ or app ID have been detected","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"The Connection is already being processed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"The Client does not possess a key for the selected Provider","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Some parameters or the entire JSON request are in the wrong format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"in":"path","name":"connection_id","required":true,"schema":{"type":"string","format":"integer","description":"The `id` of the Connection"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReconnectConnectionRequestBody"}}}}}},"/connections/{connection_id}/refresh":{"post":{"summary":"Refresh a connection","description":"Allows you to trigger a refetch of the data associated with a specific connection.\nNote that you can refresh a connection only if it has an active [consent](#consents).\nIf the response is successful, it will contain the `next_refresh_possible_at` value, and you can expect the [usual callbacks](#callbacks) of the fetching workflow.\n","tags":["Connections"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionRefreshResponse"},"example":{"data":{"expires_at":"2024-02-19T17:07:59Z","connect_url":"https://www.saltedge.com/connect?token=78abc19673b5978ec2bed15bc7b395e5f4775ccfbc78ecf45cc41e64a9ac51d46","customer_id":"1111111111111111111111"}}}}},"406":{"description":"Issues related to the certificates and/ or app ID have been detected","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"The Connection is already being processed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"The Client does not possess a key for the selected Provider","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Some parameters or the entire JSON request are in the wrong format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"in":"path","name":"connection_id","required":true,"schema":{"type":"string","format":"integer","description":"The `id` of the Connection"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RefreshConnectionRequestBody"}}}}}},"/connections/{connection_id}/background_refresh":{"post":{"summary":"Refresh a connection in background","description":"Allows you to trigger a refetch of the data associated with a specific connection without widget.\nNote that you can refresh a connection only if it has an active [consent](#consents).\nIf the response is successful, it will contain the `next_refresh_possible_at` value, and you can expect the [usual callbacks](#callbacks) of the fetching workflow.\n","tags":["Connections"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionResponse"},"example":{"data":{"id":"1111111111111111111","customer_id":"1191191191191191191","customer_identifier":"example_identifier","provider_code":"fake_oauth_client_xf","provider_name":"Fake OAuth Bank with Client Keys","country_code":"XF","status":"inactive","categorization":"personal","automatic_refresh":true,"store_credentials":true,"next_refresh_possible_at":null,"created_at":"2024-03-25T13:20:53Z","updated_at":"2024-03-25T13:29:09Z","last_consent_id":"1241241241241241241","last_attempt":{"id":"1221122112211221122","consent_id":"1241241241241241241","api_version":"6","api_mode":"service","automatic_fetch":false,"categorize":true,"custom_fields":{"id2":"value","id3":"value","id4":"value"},"automatic_refresh":true,"exclude_accounts":[],"fetch_from_date":"2024-01-25","fetch_to_date":"2024-01-25","fetch_scopes":["accounts","holder_info","transactions"],"finished":false,"finished_recent":false,"include_natures":["account"],"interactive":false,"locale":"en","partial":false,"show_consent_confirmation":false,"store_credentials":true,"user_present":false,"user_agent":null,"device_type":"desktop","remote_ip":"127.0.0.1","customer_last_logged_at":null,"created_at":"2024-03-25T13:29:09Z","updated_at":"2024-03-25T13:29:09Z","success_at":null,"fail_at":null,"fail_error_class":null,"fail_message":null,"last_stage":{"id":"1212121212121212121","name":"initialize","created_at":"2024-03-25T13:29:09Z","updated_at":"2024-03-25T13:29:09Z"}}}}}}},"400":{"description":"Some parameters or the entire JSON request are in the wrong format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"406":{"description":"Issues related to the certificates and/ or app ID have been detected","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"The Connection is already being processed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"The requested `connection_id` does not match any existing Connections","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"in":"path","name":"connection_id","required":true,"schema":{"type":"string","format":"integer"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BackgroundRefreshConnectionRequestBody"}}}}}},"/connections/{connection_id}":{"delete":{"summary":"Remove a connection","description":"Removes a connection from our system and revokes the consent.\nAll the associated accounts and transactions to that connection will be destroyed as well.\nSalt Edge will send a [destroy](#destroy) callback to your web application. Make sure to specify the `Destroy URL` in your client Account by accessing [callbacks page](https://www.saltedge.com/clients/callbacks/edit).\n","tags":["Connections"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RemovedConnectionResponse"},"example":{"data":{"id":"11111111111111","removed":true}}}}},"404":{"description":"The requested `connection_id` does not match any existing Connections","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Some parameters or the entire JSON request are in the wrong format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"in":"path","name":"connection_id","required":true,"schema":{"type":"string","format":"integer","description":"The `id` of the Connection"}}]},"get":{"summary":"Show a connection","description":"Returns a single connection object","tags":["Connections"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionResponse"},"example":{"data":{"id":"11111111111111","customer_id":"11111111111111","customer_identifier":"example_identifier","provider_code":"fake_oauth_client_xf","provider_name":"Fake OAuth Bank with Client Keys","country_code":"XF","status":"active","categorization":"personal","categorization_vendor":"saltedge","automatic_refresh":false,"store_credentials":true,"next_refresh_possible_at":"2024-01-15T14:10:28Z","created_at":"2024-01-03T14:58:19Z","updated_at":"2024-01-15T13:55:28Z","last_consent_id":"11111111111111","last_attempt":{"id":"11111111111111","consent_id":"11111111111111","api_version":"6","api_mode":"service","automatic_fetch":true,"categorize":true,"custom_fields":{},"automatic_refresh":false,"exclude_accounts":[],"fetch_from_date":"2023-11-16","fetch_to_date":"2024-01-15","fetch_scopes":["accounts","balance","holder_info","transactions"],"finished":true,"finished_recent":true,"include_natures":null,"interactive":false,"locale":"ro","partial":false,"show_consent_confirmation":true,"store_credentials":true,"user_present":true,"user_agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:120.0) Gecko/20100101 Firefox/120.0","device_type":"desktop","remote_ip":"10.9.9.9","customer_last_logged_at":null,"created_at":"2024-01-15T13:55:11Z","updated_at":"2024-01-15T13:55:28Z","success_at":"2024-01-15T13:55:28Z","fail_at":null,"fail_error_class":null,"fail_message":null,"last_stage":{"id":"11111111111111","name":"finish","created_at":"2024-01-15T13:55:28Z","updated_at":"2024-01-15T13:55:28Z"}}}}}}},"404":{"description":"The requested `connection_id` does not match any existing Connections","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Some parameters or the entire JSON request are in the wrong format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"in":"path","name":"connection_id","required":true,"schema":{"type":"string","format":"integer","description":"The `id` of the Connection"}},{"in":"query","name":"include_holder_info","required":false,"schema":{"type":"boolean","description":"Whether the Connection holder's information should be displayed"}}]},"put":{"summary":"Update connection","description":"An update of the `status`, `store_credentials`, `automatic_refresh`, or `categorization` associated with a specific Connection can be triggered.\n","tags":["Connections"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionResponse"},"example":{"data":{"id":"11111111111111","customer_id":"11111111111111","customer_identifier":"example_identifier","provider_code":"fake_oauth_client_xf","provider_name":"Fake OAuth Bank with Client Keys","country_code":"XF","status":"inactive","categorization":"business","categorization_vendor":"saltedge","automatic_refresh":true,"store_credentials":false,"next_refresh_possible_at":"2024-01-15T14:10:28Z","created_at":"2024-01-03T14:58:19Z","updated_at":"2024-01-15T13:55:28Z","last_consent_id":"11111111111111","last_attempt":{"id":"11111111111111","consent_id":"11111111111111","api_version":"6","api_mode":"service","automatic_fetch":true,"categorize":true,"custom_fields":{},"automatic_refresh":false,"exclude_accounts":[],"fetch_from_date":"2023-11-16","fetch_to_date":"2024-01-15","fetch_scopes":["accounts","balance","holder_info","transactions"],"finished":true,"finished_recent":true,"include_natures":null,"interactive":false,"locale":"ro","partial":false,"show_consent_confirmation":true,"store_credentials":true,"user_present":true,"user_agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:120.0) Gecko/20100101 Firefox/120.0","device_type":"desktop","remote_ip":"10.9.9.9","customer_last_logged_at":null,"created_at":"2024-01-15T13:55:11Z","updated_at":"2024-01-15T13:55:28Z","success_at":"2024-01-15T13:55:28Z","fail_at":null,"fail_error_class":null,"fail_message":null,"last_stage":{"id":"11111111111111","name":"finish","created_at":"2024-01-15T13:55:28Z","updated_at":"2024-01-15T13:55:28Z"}}}}}}},"400":{"description":"Some parameters or the entire JSON request are in the wrong format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"The requested `connection_id` does not match any existing Connections","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"in":"path","name":"connection_id","required":true,"schema":{"type":"string","format":"integer","description":"The `id` of the Connection"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateConnectionRequestBody"}}}}}},"/consents":{"get":{"summary":"List of consents","description":"Returns all the consents accessible to your application for a certain customer or a connection.","tags":["Consents"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConsentsResponse"},"example":{"data":[{"id":"1111111111111111111","connection_id":"1111111111111111111","customer_id":"2222222222222222222","status":"active","scopes":["accounts","transactions"],"period_days":null,"expires_at":null,"from_date":"2021-06-14","to_date":null,"collected_by":"saltedge","revoked_at":null,"revoke_reason":null,"created_at":"2021-09-14T18:04:37Z","updated_at":"2021-09-14T18:04:37Z"},{"id":"2222222222222222222","connection_id":"1111111111111111111","customer_id":"222222222222222222","status":"active","scopes":["accounts","transactions"],"period_days":null,"expires_at":null,"from_date":"2021-06-14","to_date":null,"collected_by":"saltedge","revoked_at":null,"revoke_reason":null,"created_at":"2021-09-14T18:04:37Z","updated_at":"2021-09-14T18:04:37Z"}],"meta":{"next_id":"3333333333333333333","next_page":"/api/v6/consents?connection_id=1111111111111111111\u0026from_id=3333333333333333333"}}}}},"404":{"description":"The User with the provided `customer_id` does not exist","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Some parameters or the entire JSON request are in the wrong format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"in":"query","name":"connection_id","required":true,"schema":{"type":"string","format":"integer","description":"The `id` of the Connection to which the consent belongs"}},{"in":"query","name":"customer_id","required":false,"schema":{"type":"string","format":"integer","description":"A unique `id` of the User assigned by Salt Edge to which the consent belongs"}},{"in":"query","name":"from_id","required":false,"schema":{"type":"string","format":"integer","description":"The `id` of the consent the list starts with"}},{"in":"query","name":"per_page","required":false,"schema":{"type":"integer","description":"The nr. of consents to be listed per page"}}]}},"/consents/{consent_id}":{"get":{"summary":"Show consent","description":"Returns the [consent object](#ais-consents-attributes).","tags":["Consents"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConsentResponse"},"example":{"data":{"id":"111111111111111111","connection_id":"2222222222222222222","customer_id":"3333333333333333","status":"active","scopes":["accounts","transactions"],"period_days":null,"expires_at":null,"from_date":"2021-06-14","to_date":null,"collected_by":"saltedge","revoked_at":null,"revoke_reason":null,"created_at":"2021-09-14T18:04:37Z","updated_at":"2021-09-14T18:04:37Z"}}}}},"404":{"description":"The User with the provided `customer_id` does not exist","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Some parameters or the entire JSON request are in the wrong format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"in":"path","name":"consent_id","required":true,"schema":{"type":"string","format":"integer","description":"The `id` of the consent"}},{"in":"query","name":"connection_id","required":true,"schema":{"type":"string","format":"integer","description":"The `id` of the Connection to which the consent belongs"}},{"in":"query","name":"customer_id","required":false,"schema":{"type":"string","format":"integer","description":"A unique `id` of the User assigned by Salt Edge to which the consent belongs"}}]}},"/consents/{consent_id}/revoke":{"put":{"summary":"Revoke consent","description":"Allows you to revoke a consent for a connection or a customer.","tags":["Consents"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConsentResponse"},"example":{"data":{"id":"111111111111111111","connection_id":"2222222222222222222","customer_id":"3333333333333333","status":"revoked","scopes":["accounts","transactions"],"period_days":90,"expires_at":"2024-09-12T13:13:21Z","from_date":"2024-04-14","to_date":null,"collected_by":"client","revoked_at":"2024-06-25T13:20:03Z","revoke_reason":"client","created_at":"2024-06-14T13:13:21Z","updated_at":"2024-06-25T13:20:03Z"}}}}},"404":{"description":"The User with the provided `customer_id` does not exist","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Some parameters or the entire JSON request are in the wrong format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"in":"path","name":"consent_id","required":true,"schema":{"type":"string","format":"integer","description":"The `id` of the consent"}},{"in":"query","name":"connection_id","required":true,"schema":{"type":"string","format":"integer","description":"The `id` of the Connection to which the consent belongs"}},{"in":"query","name":"customer_id","required":false,"schema":{"type":"string","format":"integer","description":"A unique `id` of the User assigned by Salt Edge to which the consent belongs"}}]}},"/countries":{"get":{"summary":"List of countries","description":"Returns a list of countries supported by Payment Initiation API.","tags":["Countries"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CountriesResponse"},"example":{"data":[{"name":"United Arab Emirates","code":"AE","refresh_start_time":22},{"name":"Armenia","code":"AM","refresh_start_time":22},{"name":"Argentina","code":"AR","refresh_start_time":5},{"name":"Austria","code":"AT","refresh_start_time":1},{"name":"Australia","code":"AU","refresh_start_time":16},{"name":"Azerbaijan","code":"AZ","refresh_start_time":22},{"name":"Bosnia and Herzegovina","code":"BA","refresh_start_time":1},{"name":"Barbados","code":"BB","refresh_start_time":6},{"name":"Bangladesh","code":"BD","refresh_start_time":20},{"name":"Belgium","code":"BE","refresh_start_time":1}],"meta":{"next_id":null,"next_page":null}}}}}},"parameters":[{"in":"query","name":"include_sandboxes","required":false,"schema":{"type":"boolean","description":"Whether to display Sandboxes and Fake Providers or not.\u003cbr /\u003e\nPossible values: `true`, `false`\u003cbr /\u003e\nDefault value: `true` (for Clients in Pending \u0026 Test status); `false` (for Live Clients)\n"}}]}},"/customers":{"post":{"summary":"Creates a customer.","description":"Creates a customer, returning the customer object.","tags":["Customers"],"responses":{"201":{"description":"OK","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/CreatedClientCustomerResponse"},{"$ref":"#/components/schemas/CreatedPartnerCustomerResponse"}]},"examples":{"clients_create_response":{"value":{"data":{"email":"email@email.com","customer_id":"111111111111111111","identifier":"example_identifier","blocked_at":null,"created_at":"2023-02-08T14:06:41Z","updated_at":"2023-02-08T14:06:41Z"}}},"partners_create_response":{"value":{"data":{"email":"example@email.com","customer_id":"111111111111111111","identifier":"example_identifier","blocked_at":null,"created_at":"2023-02-08T14:06:41Z","updated_at":"2023-02-08T14:06:41Z"}}}}}}},"409":{"description":"The User being attempted to be created already exists","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Some parameters or the entire JSON request are in the wrong format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"requestBody":{"content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ClientCustomerRequestBody"},{"$ref":"#/components/schemas/PartnerCustomerRequestBody"}]},"examples":{"clients_body_parameters":{"value":{"data":{"identifier":"example_identifier"}}},"partners_body_parameters":{"value":{"data":{"email":"email@email.com","kyc":{"citizenship_code":"GB","date_of_birth":"2001-01-01","full_name":"John Doe","gender":"male","legal_name":"Example Company Name","place_of_birth":"London","registered_office_code":"GB","registered_office_address":"London, Independence str, block 5","registration_number":"12345","residence_address":"London, Independence str, block 5","type_of_account":"own"}}}}}}}}},"get":{"summary":"All customers.","description":"List all of your app's customers.\nThis route is available only for web applications, not mobile ones.\n","tags":["Customers"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomersResponse"},"example":{"data":[{"customer_id":"1111111111111111111","identifier":"email@email.com","categorization_type":null,"blocked_at":null,"created_at":"2021-09-14T15:14:34Z","updated_at":"2021-09-14T15:14:34Z"},{"customer_id":"2222222222222222222","identifier":"some_identifier","categorization_type":null,"blocked_at":null,"created_at":"2021-09-14T18:04:11Z","updated_at":"2021-09-14T18:04:11Z"}],"meta":{"next_id":"3333333333333333333","next_page":"/api/v6/customers?from_id=3333333333333333333"}}}}}},"parameters":[{"in":"query","name":"from_id","required":false,"schema":{"type":"string","format":"integer","description":"The `id` of the Customer the list starts with"}},{"in":"query","name":"per_page","required":false,"schema":{"type":"integer","description":"The nr. of Customers to be listed per page"}}]}},"/customers/{customer_id}":{"get":{"summary":"Show customer","description":"Returns the customer object.","tags":["Customers"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerResponse"},"example":{"data":{"customer_id":"111111111111111111","identifier":"email@email.com","blocked_at":null,"created_at":"2023-02-08T14:06:41Z","updated_at":"2023-02-08T14:06:41Z"}}}}},"404":{"description":"The User with the provided `customer_id` does not exist","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Some parameters or the entire JSON request are in the wrong format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"in":"path","name":"customer_id","required":true,"schema":{"type":"string","format":"integer","description":"A unique `id` of the User assigned by Salt Edge"}}]},"delete":{"summary":"Remove a customer","description":"Deletes a customer, returning the customer object.\nRevokes all consents for this customer.\nThis route is available only for web applications.\n","tags":["Customers"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RemovedCustomerResponse"},"example":{"data":{"customer_id":"111111111111111111","deleted":true}}}}},"406":{"description":"The User was locked manually in the Dashboard and may be unlocked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"The User with the provided `customer_id` does not exist","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"in":"path","name":"customer_id","required":true,"schema":{"type":"string","format":"integer","description":"The `id` of the Customer"}}]}},"/providers/{provider_code}":{"get":{"summary":"Show a Provider","description":"Allows you to inspect a single Provider in order to give\nyour users a proper interface to input their credentials.\nThe response will have an array of `required_fields` and `interactive_fields`,\nwhich are explained in more detail in [the create section](#connections-create) of this reference.\n","tags":["Providers"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProviderResponse"},"example":{"data":{"id":"3099","code":"fake_oauth_client_xf","country_code":"XF","bic_codes":[],"dynamic_registration_code":null,"identification_codes":[],"group_code":"fake","group_name":"Fake","hub":null,"name":"Fake OAuth Bank with Client Keys","status":"active","mode":"oauth","regulated":true,"logo_url":"https://d1uuj3mi6rzwpm.cloudfront.net/logos/providers/xf/placeholder_global.svg","home_url":"https://example.com","login_url":"https://example.com","timezone":"UTC","supported_iframe_embedding":true,"optional_interactivity":true,"customer_notified_on_sign_in":false,"created_at":"2018-04-12T14:30:29Z","updated_at":"2024-03-06T07:47:56Z"}}}}},"404":{"description":"A Provider with such a `provider_code` could not be found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Some parameters or the entire JSON request are in the wrong format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"in":"path","name":"provider_code","required":true,"schema":{"type":"string","description":"The code assigned by Salt Edge for a particular Provider includes the country code for easier differentiation. I.e.: all Spanish providers' codes end with `_es`.\n"}},{"in":"query","name":"include_ais_fields","required":false,"schema":{"type":"boolean","description":"Includes the Provider’s AIS fields.\u003c/br\u003e If `true`, the following fields are available: `automatic_fetch`, `custom_pendings_period`, `holder_info`, `instruction_for_connections`, `interactive_for_connections`, `max_consent_days`, `max_fetch_interval`, `fetch_policies`, `max_interactive_delay`, `refresh_timeout`, `supported_account_extra_fields`, `supported_account_natures`, `supported_account_types`, `supported_fetch_scopes`, `supported_transaction_extra_fields`"}},{"in":"query","name":"include_pis_fields","required":false,"schema":{"type":"boolean","description":"Includes supported and required Payment fields.\u003c/br\u003e If `true`, the following fields are available: `payment_templates`, `instruction_for_payments`, `interactive_for_payments`, `required_payment_fields`, `supported_payment_fields`, `no_funds_rejection_supported`"}},{"in":"query","name":"include_credentials_fields","required":false,"schema":{"type":"boolean","description":"Includes supported and required credentials fields.\u003c/br\u003e If `true`, the following fields are available: `credentials_fields`, `interactive_fields`"}},{"in":"query","name":"include_bulk_payment_attributes","required":false,"schema":{"type":"boolean","description":"Includes supported and required bulk payment attributes.\u003c/br\u003e If `true`, the following fields are available: `bulk_payment_templates`, `bulk_required_creditors_attributes`, `bulk_required_shared_payment_attributes`, `unknown_status_payments_lifetime`, `bulk_supported_shared_payment_attributes`."}}]}},"/providers":{"get":{"summary":"List of providers","description":"Returns all the providers we operate with.\nIf a Provider becomes `disabled`, it is not included in the list.\n","tags":["Providers"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProvidersResponse"},"example":{"data":[{"id":"247","code":"hbci_25451345_de","country_code":"DE","bic_codes":["NOLADE21PMT"],"dynamic_registration_code":null,"identification_codes":["25451345"],"group_code":"sparkasse","group_name":"Sparkasse","hub":null,"name":"Stadtsparkasse Bad Pyrmont HBCI","status":"active","mode":"api","regulated":false,"logo_url":"https://d1uuj3mi6rzwpm.cloudfront.net/logos/providers/de/stadtsparkasse_oberhausen_de.svg","home_url":"http://www.ssk-bad-pyrmont.de","login_url":"http://www.ssk-bad-pyrmont.de","timezone":"Europe/Berlin","supported_iframe_embedding":true,"optional_interactivity":true,"customer_notified_on_sign_in":false,"created_at":"2014-08-21T09:07:38Z","updated_at":"2023-06-29T10:41:25Z"},{"id":"248","code":"hbci_25462680_de","country_code":"DE","bic_codes":["GENODEF1COP"],"dynamic_registration_code":null,"identification_codes":["25462680"],"group_code":"volksbank_raiffeisen","group_name":"Volksbanken Raiffeisenbanken","hub":null,"name":"Volksbank am Ith Coppenbrügge HBCI","status":"active","mode":"api","regulated":false,"logo_url":"https://d1uuj3mi6rzwpm.cloudfront.net/logos/providers/de/frankfurter_volksbank_de.svg","home_url":"http://www.vb-iw.de","login_url":"http://www.vb-iw.de","timezone":"Europe/Berlin","supported_iframe_embedding":true,"optional_interactivity":true,"customer_notified_on_sign_in":false,"created_at":"2014-08-21T09:07:38Z","updated_at":"2023-06-29T10:41:25Z"}],"meta":{"next_id":"249","next_page":"/api/v6/providers?from_id=249"}}}}},"400":{"description":"Some parameters or the entire JSON request are in the wrong format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"in":"query","name":"include_sandboxes","required":false,"schema":{"type":"boolean","description":"Whether to display Sandboxes and Fake Providers or not.\u003cbr /\u003e\nPossible values: `true`, `false`\u003cbr /\u003e\nDefault value: `true` (for Clients in Pending \u0026 Test status); `false` (for Live Clients)\n"}},{"in":"query","name":"country_code","required":false,"schema":{"type":"string","description":"Filters the Providers by country"}},{"in":"query","name":"include_ais_fields","required":false,"schema":{"type":"boolean","description":"Includes the Provider’s AIS fields.\u003c/br\u003e If `true`, the following fields are available: `automatic_fetch`, `custom_pendings_period`, `holder_info`, `instruction_for_connections`, `interactive_for_connections`, `max_consent_days`, `max_fetch_interval`, `fetch_policies`, `max_interactive_delay`, `refresh_timeout`, `supported_account_extra_fields`, `supported_account_natures`, `supported_account_types`, `supported_fetch_scopes`, `supported_transaction_extra_fields`"}},{"in":"query","name":"include_pis_fields","required":false,"schema":{"type":"boolean","description":"Includes supported and required Payment fields.\u003c/br\u003e If `true`, the following fields are available: `payment_templates`, `instruction_for_payments`, `interactive_for_payments`, `required_payment_fields`, `supported_payment_fields`, `no_funds_rejection_supported`"}},{"in":"query","name":"include_credentials_fields","required":false,"schema":{"type":"boolean","description":"Includes supported and required credentials fields.\u003c/br\u003e If `true`, the following fields are available: `credentials_fields`, `interactive_fields`"}},{"in":"query","name":"include_bulk_payment_attributes","required":false,"schema":{"type":"boolean","description":"Includes supported and required bulk payment attributes.\u003c/br\u003e If `true`, the following fields are available: `bulk_payment_templates`, `bulk_required_creditors_attributes`, `bulk_required_shared_payment_attributes`, `unknown_status_payments_lifetime`, `bulk_supported_shared_payment_attributes`."}},{"in":"query","name":"exclude_inactive","required":false,"schema":{"type":"boolean","description":"Excludes inactive Providers from the list"}},{"in":"query","name":"key_owner","required":false,"schema":{"type":"string","description":"Filters Providers by key owner"}},{"in":"query","name":"mode","required":false,"schema":{"type":"string","description":"Filters Providers by mode"}},{"in":"query","name":"supported_product","required":false,"schema":{"type":"string","enum":["ais","pis"],"description":"Filters Providers by supported Product"}},{"in":"query","name":"from_id","required":false,"schema":{"type":"string","format":"integer","description":"The `id` of the Provider which the list starts with"}},{"in":"query","name":"per_page","required":false,"schema":{"type":"integer","description":"The nr. of Providers to be listed [per page](/#pagination)"}}]}},"/rates":{"get":{"summary":"List of rates","description":"You can get the list of all the currency rates that we support.\nYou will receive the currency rates starting March 21, 2014.\nIf any older date is requested, you will still receive the rates starting March 21, 2014.\n","tags":["Rates"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RatesResponse"},"example":{"data":[{"currency_code":"AED","rate":0.2722652206,"fail":false},{"currency_code":"AFN","rate":0.0135567167,"fail":false}],"meta":{"issued_on":"2025-01-01"}}}}},"400":{"description":"Some parameters or the entire JSON request are in the wrong format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"in":"query","name":"date","required":false,"schema":{"type":"string","format":"date","description":"The currency rate for a specific date is returned\u003cbr /\u003e\nPossible values: any date in the `YYYY-MM-DD` format\u003cbr /\u003e\nDefault value: current date\n"}}]}},"/transactions":{"get":{"summary":"List of transactions","description":"You can see the list of non-duplicated transactions of an Account.","tags":["Transactions"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransactionsResponse"},"example":{"data":[{"id":"1111111111111111111","account_id":"2222222222222222222","duplicated":false,"mode":"normal","status":"posted","made_on":"2024-01-03","amount":100.0,"currency_code":"EUR","description":"Sample EUR for transaction on 2024-01-03","category":"uncategorized","extra":{"payee":"Sample payee","payer":"Sample payer","payee_information":"Sample payee information","payer_information":"Sample payer information","account_balance_snapshot":1000.0,"categorization_confidence":null},"created_at":"2024-01-03T14:40:14Z","updated_at":"2024-01-03T14:40:14Z"},{"id":"2222222222222222222","account_id":"2222222222222222222","duplicated":false,"mode":"normal","status":"posted","made_on":"2024-01-03","amount":100.0,"currency_code":"EUR","description":"Sample EUR for transaction on 2024-01-03","category":"uncategorized","extra":{"payee":"Sample payee","payer":"Sample payer","payee_information":"Sample payee information","payer_information":"Sample payer information","account_balance_snapshot":1000.0,"categorization_confidence":null},"created_at":"2024-01-03T14:40:14Z","updated_at":"2024-01-03T14:40:14Z"}],"meta":{"next_id":"3333333333333333333","next_page":"/api/v6/transactions/?connection_id=1111111111111111111\u0026account_id=2222222222222222222\u0026from_id=3333333333333333333"}}}}},"404":{"description":"The requested `connection_id` does not match any existing Connections","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Some parameters or the entire JSON request are in the wrong format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"in":"query","name":"connection_id","required":true,"schema":{"type":"string","format":"integer","description":"The `id` of the Connection"}},{"in":"query","name":"account_id","required":false,"schema":{"type":"string","format":"integer","description":"The `id` of the Account to which transactions belong"}},{"in":"query","name":"pending","required":false,"schema":{"type":"boolean","description":"Filters transactions by pending status.\u003cbr /\u003e\nPossible values: `true`, `false`.\u003cbr /\u003e\nReturns a list of `posted` transactions if `pending`: `false` or parameter not sent.\u003cbr /\u003e\nReturns a list of `pending` transactions if `pending`: `true`.\u003cbr /\u003e\nA pending transaction is an action initiated on an Account that has been authorized but not yet fully processed or confirmed by the Provider.\n"}},{"in":"query","name":"duplicated","required":false,"schema":{"type":"boolean","enum":[true,false],"description":"Filters transactions by duplicated value"}},{"in":"query","name":"from_id","required":false,"schema":{"type":"string","format":"integer","description":"The `id` of the transaction the list starts with"}},{"in":"query","name":"per_page","required":false,"schema":{"type":"integer","description":"The nr. of transactions to be listed per page"}}]},"put":{"summary":"","description":"","tags":["Transactions"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateTransactionsResponse"},"example":{"data":{"duplicated":true,"transaction_ids":["1111111111111111","2222222222222222","3333333333333333"]}}}}},"404":{"description":"The requested `connection_id` does not match any existing Connections","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Some parameters or the entire JSON request are in the wrong format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateTransactionsRequestBody"}}}}}},"/bulk_payment_templates":{"get":{"summary":"List of Bulk Payment Templates","description":"","tags":["Bulk Payment Templates"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkPaymentTemplatesResponse"},"example":{"data":[{"identifier":"SEPA","description":"SEPA Payment","creditors_attributes":[{"name":"creditor_name","english_name":"Creditor Name","localized_name":"Creditor Name","nature":"text","optional":false,"extra":{"validation_regexp":""},"options":null},{"name":"amount","english_name":"Amount","localized_name":"Amount","nature":"number","optional":false,"extra":{"validation_regexp":"^[-+]?[0-9]*\\.?[0-9]+$"},"options":null},{"name":"creditor_iban","english_name":"Creditor IBAN","localized_name":"Creditor IBAN","nature":"text","optional":false,"extra":{"validation_regexp":"^[a-zA-Z]{2}[0-9]{2}[a-zA-Z0-9]{4}[A-Z0-9]{7}([a-zA-Z0-9]?){0,16}$"},"options":null}],"shared_payment_attributes":[{"name":"debtor_name","english_name":"Debtor Name","localized_name":"Debtor Name","nature":"text","optional":true,"extra":{"validation_regexp":""},"options":null},{"name":"debtor_iban","english_name":"Debtor IBAN","localized_name":"Debtor IBAN","nature":"text","optional":true,"extra":{"validation_regexp":"^[a-zA-Z]{2}[0-9]{2}[a-zA-Z0-9]{4}[A-Z0-9]{7}([a-zA-Z0-9]?){0,16}$"},"options":null}]}]}}}},"400":{"description":"Some parameters or the entire JSON request are in the wrong format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"406":{"description":"The User was locked manually in the Dashboard and may be unlocked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"The User with the provided `customer_id` does not exist","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}}}},"/bulk_payment_templates/{template_identifier}":{"get":{"summary":"Show a bulk payment template","description":"Returns a comprehensive bulk payment template object","tags":["Bulk Payment Templates"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaymentTemplateResponse"},"example":{"data":{"identifier":"SEPA","description":"SEPA Payment","creditors_attributes":[{"name":"creditor_name","english_name":"Creditor Name","localized_name":"Creditor Name","nature":"text","optional":false,"extra":{"validation_regexp":""},"options":null},{"name":"amount","english_name":"Amount","localized_name":"Amount","nature":"number","optional":false,"extra":{"validation_regexp":"^[-+]?[0-9]*\\.?[0-9]+$"},"options":null},{"name":"creditor_iban","english_name":"Creditor IBAN","localized_name":"Creditor IBAN","nature":"text","optional":false,"extra":{"validation_regexp":"^[a-zA-Z]{2}[0-9]{2}[a-zA-Z0-9]{4}[A-Z0-9]{7}([a-zA-Z0-9]?){0,16}$"},"options":null}],"shared_payment_attributes":[{"name":"debtor_name","english_name":"Debtor Name","localized_name":"Debtor Name","nature":"text","optional":true,"extra":{"validation_regexp":""},"options":null},{"name":"debtor_iban","english_name":"Debtor IBAN","localized_name":"Debtor IBAN","nature":"text","optional":true,"extra":{"validation_regexp":"^[a-zA-Z]{2}[0-9]{2}[a-zA-Z0-9]{4}[A-Z0-9]{7}([a-zA-Z0-9]?){0,16}$"},"options":null}]}}}}},"404":{"description":"The Bulk Payment template does not match any existing bulk payment templates","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"in":"path","name":"template_identifier","required":true,"schema":{"type":"string","description":"Possible values: SEPA\n"}}]}},"/bulk_payments/create":{"post":{"summary":"Create a bulkpayment","description":"","tags":["Bulk Payments"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkPaymentCreateResponse"},"example":{"data":{"expires_at":"2025-04-18T13:47:40Z","bulk_payment_url":"https://www.saltedge.com/bulk_payments/connect?token=4911fc74ba9810cda8afc977b94c71c700f687d6f536ef257cf065ee9ce24481","customer_id":"4444444444444444444","bulk_payment_id":"11111111111111111111"}}}}},"400":{"description":"Some parameters or the entire JSON request are in the wrong format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"406":{"description":"The selected Payment template is not supported by the chosen Provider","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"A Provider with such a `provider_code` could not be found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreatePaymentRequestBody"}}}}}},"/bulk_payments":{"get":{"summary":"List of bulk payments","description":"","tags":["Bulk Payments"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkPaymentsResponse"},"example":{"data":[{"id":"1111111111111111111","customer_id":"4444444444444444444","provider_code":"fake_oauth_client_xf","provider_name":"Fake OAuth Bank with Client Keys","created_at":"2024-02-19T20:43:54Z","updated_at":"2024-02-19T20:43:57Z","refresh_interval":1800,"refresh_timeout":172800,"status":"settled","raw_provider_status":"ACTC","template_identifier":"SEPA","payment_attributes":{"creditors_attributes":[{"creditor_iban":"SOME_IBAN12345","amount":9.99,"currency_code":"EUR"},{"creditor_iban":"SOME_IBAN54321","amount":1.99,"currency_code":"EUR"}],"shared_payment_attributes":{"debtor_iban":"SOMEOTHERIBAN23456","description":"some description about the bulk payment"}},"last_attempt":{"id":"999999999999999999","custom_fields":{}}}],"meta":{"next_id":"2222222222222222222","next_page":"/api/v6/payments?customer_id=1111111111111111111\u0026from_id=2222222222222222222"}}}}},"400":{"description":"Some parameters or the entire JSON request are in the wrong format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"406":{"description":"The User was locked manually in the Dashboard and may be unlocked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"The User with the provided `customer_id` does not exist","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"in":"query","name":"customer_id","required":true,"schema":{"type":"string","format":"integer","description":"A unique `id` of the User assigned by Salt Edge"}},{"in":"query","name":"from_id","required":false,"schema":{"type":"string","format":"integer","description":"The `id` of the Bulk Payment the list starts with"}},{"in":"query","name":"per_page","required":false,"schema":{"type":"integer","description":"The nr. of Bulk Payments to be listed [per page](/#pagination)"}}]}},"/bulk_payments/{bulk_payment_id}":{"get":{"summary":"Show a bulk payment","description":"Returns a comprehensive bulk payment object","tags":["Bulk Payments"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkPaymentResponse"},"example":{"data":{"id":"11111111111111111111","customer_id":"4444444444444444444","provider_code":"fake_client_xf","provider_name":"Fake Bank with Client Keys","created_at":"2025-04-18T13:46:40Z","updated_at":"2025-04-18T13:46:40Z","refresh_interval":3600,"refresh_timeout":172800,"status":"initiated","raw_provider_status":null,"template_identifier":"SEPA","payment_attributes":{"creditors_attributes":[{"creditor_iban":"SOME_IBAN12345","amount":9.99,"currency_code":"EUR"},{"creditor_iban":"SOME_IBAN54321","amount":1.99,"currency_code":"EUR"}],"shared_payment_attributes":{"debtor_iban":"SOMEOTHERIBAN23456","description":"some description about the bulk payment"}},"extra":null,"last_attempt":{"id":"1111111","custom_fields":{}}}}}}},"400":{"description":"The Client has no access to the required route","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"406":{"description":"The User was locked manually in the Dashboard and may be unlocked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"The requested `bulk_payment_id` does not match any existing Bulk Payment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"in":"path","name":"bulk_payment_id","required":true,"schema":{"type":"string","format":"integer","description":"The `id` of the Bulk Payment"}}]}},"/bulk_payments/{bulk_payment_id}/refresh":{"put":{"summary":"Update bulk payment","description":"Refreshes the Bulk Payment status and returns the updated Bulk Payment object.\n","tags":["Bulk Payments"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkPaymentResponse"},"example":{"data":{"id":"11111111111111111111","customer_id":"4444444444444444444","provider_code":"fake_client_xf","provider_name":"Fake Bank with Client Keys","created_at":"2025-04-18T13:46:40Z","updated_at":"2025-04-18T13:46:40Z","refresh_interval":3600,"refresh_timeout":172800,"status":"authorizing","raw_provider_status":null,"template_identifier":"SEPA","payment_attributes":{"creditors_attributes":[{"creditor_iban":"SOME_IBAN12345","amount":9.99,"currency_code":"EUR"},{"creditor_iban":"SOME_IBAN54321","amount":1.99,"currency_code":"EUR"}],"shared_payment_attributes":{"debtor_iban":"SOMEOTHERIBAN23456","description":"some description about the bulk payment"}},"extra":null,"last_attempt":{"id":"1111111","custom_fields":{}}}}}}},"400":{"description":"The Client has no access to the required route","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"406":{"description":"The User was locked manually in the Dashboard and may be unlocked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"The requested `bulk_payment_id` does not match any existing Bulk Payment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"in":"path","name":"bulk_payment_id","required":true,"schema":{"type":"string","format":"integer","description":"The `id` of the Bulk Payment"}}]}},"/payment_templates":{"get":{"summary":"List of Payment Templates","description":"","tags":["Payment Templates"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaymentTemplatesResponse"},"example":{"data":[{"identifier":"BACS","description":"BACS payment","payment_fields":[{"name":"customer_latitude","english_name":"Customer Latitude","localized_name":"Customer Latitude","nature":"number","position":7,"extra":{"validation_regexp":"^[-+]?[0-9]*\\.?[0-9]+$"},"optional":true},{"name":"currency_code","english_name":"Currency","localized_name":"Currency","nature":"select","position":38,"extra":{"validation_regexp":""},"optional":false,"field_options":[{"name":"GBP","english_name":"GBP","localized_name":"GBP","option_value":"GBP","selected":true}]}]},{"identifier":"CHAPS","description":"CHAPS payment","payment_fields":[{"name":"customer_latitude","english_name":"Customer Latitude","localized_name":"Customer Latitude","nature":"number","position":7,"extra":{"validation_regexp":"^[-+]?[0-9]*\\.?[0-9]+$"},"optional":true},{"name":"currency_code","english_name":"Currency","localized_name":"Currency","nature":"select","position":38,"extra":{"validation_regexp":""},"optional":false,"field_options":[{"name":"GBP","english_name":"GBP","localized_name":"GBP","option_value":"GBP","selected":true}]}]}]}}}},"400":{"description":"Some parameters or the entire JSON request are in the wrong format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"406":{"description":"The User was locked manually in the Dashboard and may be unlocked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"The User with the provided `customer_id` does not exist","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}}}},"/payment_templates/{template_identifier}":{"get":{"summary":"Show a payment template","description":"Returns a comprehensive payment template object","tags":["Payment Templates"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaymentTemplateResponse"},"example":{"data":{"identifier":"CHAPS","description":"CHAPS payment","payment_fields":[{"name":"customer_latitude","english_name":"Customer Latitude","localized_name":"Customer Latitude","nature":"number","position":7,"extra":{"validation_regexp":"^[-+]?[0-9]*\\.?[0-9]+$"},"optional":true},{"name":"currency_code","english_name":"Currency","localized_name":"Currency","nature":"select","position":38,"extra":{"validation_regexp":""},"optional":false,"field_options":[{"name":"GBP","english_name":"GBP","localized_name":"GBP","option_value":"GBP","selected":true}]}]}}}}},"404":{"description":"The Payment template does not match any existing payment templates","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"in":"path","name":"template_identifier","required":true,"schema":{"type":"string","description":"Possible values: any template identifier from the [Supported Templates](#supported-templates\")\n"}}]}},"/payments/create":{"post":{"summary":"Create a payment","description":"","tags":["Payments"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaymentCreateResponse"},"example":{"data":{"expires_at":"2024-02-19T20:42:56Z","payment_url":"https://www.saltedge.com/payments/connect?token=de9ce7f81424ee83867c7684987948f2443bf0df5509vndrcb7ebf37e918ee0456ef","customer_id":"1111111111111111111","payment_id":"1111111111111111111"}}}}},"400":{"description":"Some parameters or the entire JSON request are in the wrong format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"406":{"description":"Issues related to the certificates and/ or app ID have been detected","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"The Client does not possess a key for the selected Provider","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreatePaymentRequestBody"}}}}}},"/payments":{"get":{"summary":"List of Payments","description":"","tags":["Payments"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaymentsResponse"},"example":{"data":[{"id":"1111111111111111111","customer_id":"4444444444444444444","provider_code":"fake_oauth_client_xf","provider_name":"Fake OAuth Bank with Client Keys","created_at":"2024-02-19T20:43:54Z","updated_at":"2024-02-19T20:43:57Z","refresh_interval":1800,"refresh_timeout":172800,"status":"settled","raw_provider_status":"ACTC","template_identifier":"SEPA","payment_attributes":{"mode":"normal","amount":"1.00","debtor_iban":"DE33333333333333333","description":"Stocks purchase","creditor_iban":"GB555555555555555555","creditor_name":"Jay Dawson","creditor_town":"London","currency_code":"EUR","end_to_end_id":"#123123123","creditor_bic":"123","creditor_post_code":"E14 5AB","customer_device_os":"iOS 11","customer_ip_address":"10.0.0.1","creditor_street_name":"One Canada Square","creditor_country_code":"UK","customer_last_logged_at":"2018-11-21T13:48:40Z","creditor_building_number":"One"},"last_attempt":{"id":"999999999999999999","custom_fields":{}}}],"meta":{"next_id":"2222222222222222222","next_page":"/api/v6/payments?customer_id=1111111111111111111\u0026from_id=2222222222222222222"}}}}},"400":{"description":"Some parameters or the entire JSON request are in the wrong format","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"406":{"description":"The User was locked manually in the Dashboard and may be unlocked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"The User with the provided `customer_id` does not exist","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"in":"query","name":"customer_id","required":true,"schema":{"type":"string","format":"integer","description":"A unique `id` of the User assigned by Salt Edge"}},{"in":"query","name":"from_id","required":false,"schema":{"type":"string","format":"integer","description":"The `id` of the Payment the list starts with"}},{"in":"query","name":"per_page","required":false,"schema":{"type":"integer","description":"The nr. of Payments to be listed [per page](/#pagination)"}}]}},"/payments/{payment_id}":{"get":{"summary":"Show a payment","description":"Returns a comprehensive payment object","tags":["Payments"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaymentResponse"},"example":{"data":{"id":"1111111111111111111","customer_id":"4444444444444444444","provider_code":"fake_oauth_client_xf","provider_name":"Fake OAuth Bank with Client Keys","created_at":"2024-02-19T20:43:54Z","updated_at":"2024-02-19T20:43:57Z","refresh_interval":1800,"refresh_timeout":172800,"status":"settled","raw_provider_status":"ACTC","template_identifier":"SEPA","payment_attributes":{"mode":"normal","amount":"1.00","debtor_iban":"DE33333333333333333","description":"Stocks purchase","creditor_iban":"GB555555555555555555","creditor_name":"Jay Dawson","creditor_town":"London","currency_code":"EUR","end_to_end_id":"#123123123","creditor_bic":"123","creditor_post_code":"E14 5AB","customer_device_os":"iOS 11","customer_ip_address":"10.0.0.1","creditor_street_name":"One Canada Square","creditor_country_code":"UK","customer_last_logged_at":"2018-11-21T13:48:40Z","creditor_building_number":"One"},"last_attempt":{"id":"999999999999999999","custom_fields":{}}}}}}},"400":{"description":"The Client has no access to the required route","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"406":{"description":"The User was locked manually in the Dashboard and may be unlocked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"The requested `payment_id` does not match any existing Payment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"in":"path","name":"payment_id","required":true,"schema":{"type":"string","format":"integer","description":"The `id` of the Payment"}}]}},"/payments/{payment_id}/refresh":{"put":{"summary":"Update payment","description":"Refreshes the Payment status and returns the updated Payment object.\n","tags":["Payments"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdatePaymentRequestBody"},"example":{"data":{"id":"1111111111111111111","customer_id":"4444444444444444444","provider_code":"fake_oauth_client_xf","provider_name":"Fake OAuth Bank with Client Keys","created_at":"2024-02-19T20:43:54Z","updated_at":"2024-02-19T20:43:57Z","refresh_interval":1800,"refresh_timeout":172800,"status":"settled","raw_provider_status":"ACTC","template_identifier":"SEPA","payment_attributes":{"mode":"normal","amount":"1.00","debtor_iban":"DE33333333333333333","description":"Stocks purchase","creditor_iban":"GB555555555555555555","creditor_name":"Jay Dawson","creditor_town":"London","currency_code":"EUR","end_to_end_id":"#123123123","creditor_bic":"123","creditor_post_code":"E14 5AB","customer_device_os":"iOS 11","customer_ip_address":"10.0.0.1","creditor_street_name":"One Canada Square","creditor_country_code":"UK","customer_last_logged_at":"2018-11-21T13:48:40Z","creditor_building_number":"One"},"last_attempt":{"id":"999999999999999999","custom_fields":{}}}}}}},"400":{"description":"The Client has no access to the required route","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"406":{"description":"The payment cannot be refreshed as it has already reached a final status","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"The requested `payment_id` does not match any existing Payment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"in":"path","name":"payment_id","required":true,"schema":{"type":"string","format":"integer","description":"The `id` of the Payment"}}]}}},"components":{"securitySchemes":{"app_id":{"type":"apiKey","name":"App-id","in":"header"},"secret":{"type":"apiKey","name":"Secret","in":"header"}},"schemas":{"Account":{"type":"object","required":["id","connection_id","name","nature","balance","currency_code","extra","created_at","updated_at"],"properties":{"id":{"type":"string","format":"integer","description":"The `id` of the Account"},"connection_id":{"type":"string","format":"integer","description":"The `id` of the Connection the Account belongs to"},"name":{"type":"string","description":"The unique internal Account identifier. May not coincide with the public name of the Account"},"nature":{"type":"string","enum":["account","bonus","card","checking","credit","credit_card","debit_card","ewallet","insurance","investment","loan","mortgage","savings"],"description":"The type of the Account"},"balance":{"type":"number","format":"float","description":"The latest Account balance for the main Account.\u003cbr /\u003e\nFor additional balances, please refer to the [Accounts/ Extra/](#ais-accounts-extra-raw_balance) `raw_balance` parameter.\n"},"currency_code":{"type":"string","description":"The currency code of the Account in [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) format"},"extra":{"$ref":"#/components/schemas/AccountExtra"},"created_at":{"type":"string","format":"date-time","description":"The date and time in UTC when the Account was imported"},"updated_at":{"type":"string","format":"date-time","description":"The date and time in UTC when the Account’s balance has changed or new transactions have been fetched"}}},"AccountExtra":{"allOf":[{"$ref":"#/components/schemas/GeneralAccountExtra"},{"$ref":"#/components/schemas/InsuranceAccountExtra"},{"$ref":"#/components/schemas/InvestmentAccountExtra"}]},"GeneralAccountExtra":{"type":"object","properties":{"account_name":{"type":"string","description":"Changeable title of the Account"},"account_number":{"type":"string","description":"Internal Bank Account Number"},"assets":{"type":"array","description":"An array of crypto codes and their corresponding amounts assigned to the investment Account","items":{"type":"string"}},"available_amount":{"type":"number","format":"float","description":"The available amount in the Account's currency"},"balance_type":{"type":"string","description":"Examples: `interimAvailable`, `closingBooked`, `interimBooked`, `authorised`, `expected`, `BOOKED`, `CLAV`, `CLBD`, `XPCD`, `OTHR`, etc.\n"},"balance_updated_at":{"type":"string","format":"date-time","description":"Timestamp indicating the last time the Account balance was modified.\u003cbr /\u003e\nThis field is updated only when the Account balance changes\n"},"blocked_amount":{"type":"number","format":"float","description":"The amount currently blocked in the Account’s currency"},"card_network":{"type":"string","enum":["american_express","china_unionpay","diners_club","jcb","maestro","master_card","uatp","visa","mir"],"description":"The card belonging to a specific financial system"},"cards":{"type":"array","description":"A list of masked card numbers linked to the Account","items":{"type":"string"}},"holder_name":{"type":"string","description":"The name of the individual or entity that owns the Account"},"closing_balance":{"type":"number","format":"float","description":"Account balance at the end of an accounting period"},"credit_limit":{"type":"number","format":"float","description":"Maximum amount of money that is allowed to be spent in the Account’s currency"},"current_date":{"type":"string","format":"date","description":"Date of the Provider’s statement generation (applicable to Banks)"},"current_time":{"type":"string","format":"time","description":"Time of Provider statement generation (applicable to Banks)"},"expiry_date":{"type":"string","format":"date","description":"Card expiration date"},"iban":{"type":"string","description":"Account’s IBAN"},"bban":{"type":"string","description":"Basic Bank Account Number"},"interest_rate":{"type":"number","format":"float","description":"The interest rate of the Account as a percentage value"},"interest_type":{"type":"string","description":"The type of Account interest associated with the `interest_rate`"},"floating_interest_rate":{"type":"object","description":"Minimum and maximum values of the interest rate","properties":{"min_value":{"type":"number","format":"float"},"max_value":{"type":"number","format":"float"}}},"masked_pan":{"type":"string","description":"Returns a partially hidden version of the typically 16-digit Primary Account Number (PAN)"},"remaining_payments":{"type":"integer","description":"The number of remaining payments required to pay off the loan"},"penalty_amount":{"type":"number","format":"float","description":"The penalty amount"},"next_payment_amount":{"type":"number","format":"float","description":"Next payment amount for loans or credits"},"next_payment_date":{"type":"string","format":"date","description":"Next payment date for loans or credits"},"open_date":{"type":"string","format":"date","description":"The date when any type of Account or card was opened"},"opening_balance":{"type":"number","format":"float","description":"Account balance carried forward from the end of one accounting period to the beginning of a new accounting period"},"partial":{"type":"boolean","description":"Account transactions were either not imported or only partially imported due to an internal error on the Provider’s side"},"provider_account_id":{"type":"string","description":"A unique `id` is assigned by the Provider to identify an Account within its system"},"raw_balance":{"type":"string","description":"- The original Account balance response returned by the Provider.\n- It is added only for `regulated: true` Providers.\n- It is returned only if the separate `balances` parameter is present in the Provider’s original response.\n"},"sort_code":{"type":"string","description":"Routing number (US)/ BSB code (Australia)/ sort code (UK)"},"statement_cut_date":{"type":"string","format":"date","description":"The date when the current statement transitions to the previous one"},"status":{"type":"string","description":"Shows whether the Account is `active`, `inactive`, or `unauthorized`"},"swift":{"type":"string","description":"Account SWIFT code"},"total_payment_amount":{"type":"number","format":"float","description":"Total payment amount for loans or credits"},"transactions_count":{"type":"object","description":"Number of transactions, categorized by `posted` and `pending`","properties":{"posted":{"type":"integer"},"pending":{"type":"integer"}}},"payment_type":{"type":"string","description":"Account payment method"},"cashback_amount":{"type":"number","format":"float","description":"Accumulated CashBack/ Cash Benefit"},"monthly_total_payment":{"type":"number","format":"float","description":"The amount paid to a borrower for a month"},"minimum_payment":{"type":"number","format":"float","description":"The lowest amount that can be paid on the credit card to avoid penalties"},"updated_on_last_attempt":{"type":"boolean","description":"Indicates whether the account was successfully updated during the latest attempt.\u003cbr /\u003e\nIf `true`, account was updated and included in the last attempt. \u003cbr /\u003e\nDefault value: `false` — account was not updated (e.g., not covered by current consent or not returned by the bank).\n"}}},"InvestmentAccountExtra":{"type":"object","properties":{"investment_amount":{"type":"number","format":"float","description":"Total amount invested"},"unit_price":{"type":"number","format":"float","description":"Price per unit (when used with `units`)"},"units":{"type":"number","format":"float","description":"Nr of units owned (when used with `unit_price`)"},"indicative_unit_price":{"type":"number","format":"float","description":"Indicative price per unit (when used with `units`)"},"interest_income":{"type":"number","format":"float","description":"Amount of interest income/ profit"},"interest_amount":{"type":"number","format":"float","description":"Amount of interest in currency"},"profit_amount":{"type":"number","format":"float","description":"Amount of profit/ loss of the investment Account"},"profit_rate":{"type":"number","format":"float","description":"Rate of profit/ loss of the investment Account as a percentage value"},"asset_class":{"type":"string","description":"Class of investment asset"},"product_type":{"type":"string","description":"Type of investment product"},"total_unit_value":{"type":"number","format":"float","description":"Total unit value of fundholding"},"fund_holdings":{"type":"object","description":"Fund holdings list with own values such as `investment_percentage`, `balance`, `bid_price`, `value`, `value_date`, `total_quantity`, `available_quantity`, `actual_price`, `actual_value`"}}},"InsuranceAccountExtra":{"type":"object","properties":{"premium_frequency":{"type":"string","description":"Frequency of premium payments"},"policy_status":{"type":"string","description":"Current policy status"},"life_assured_name":{"type":"string","description":"Name of the person who is assured"},"premium_amount":{"type":"number","format":"float","description":"Amount of premium to be paid"},"single_premium_amount":{"type":"number","format":"float","description":"Amount of single premium to be paid"},"financial_consultant":{"type":"string","description":"Name of the financial consultant"},"total_reversionary_bonus":{"type":"number","format":"float","description":"Accumulated amount of reversionary bonus"},"gross_surrender":{"type":"number","format":"float","description":"Current gross surrender value"},"guaranteed_gross_surrender":{"type":"number","format":"float","description":"Guaranteed gross surrender value"},"reversionary_bonus_cash_value":{"type":"number","format":"float","description":"Cash value of reversionary bonus"},"owned_policy_amount":{"type":"number","format":"float","description":"Amount currently owned on policy"},"policy_loan_limit":{"type":"number","format":"float","description":"Maximum amount of additional Policy Loan"},"policy_converted_to_paid_up":{"type":"number","format":"float","description":"New assured sum if the Policy is converted to a paid-up"},"paid_up_conversion_reversionary_bonus":{"type":"number","format":"float","description":"Reversionary bonus amount after policy-to-paid-up conversion"},"policy_components":{"type":"object","description":"Policy components with own values such as `status`, `amount_assured`, `amount_premium`, `start_date`, `expiry_date`, `premium_expiry_date`, `assured_name`"}}},"AccountsResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Account"}},"meta":{"$ref":"#/components/schemas/MetaObject"}}},"MetaObject":{"type":"object","description":"Metaobject that contains information about pagination.","properties":{"next_id":{"type":"string"},"next_page":{"type":"string"}}},"Attempt":{"type":"object","properties":{"id":{"type":"string","format":"integer","description":"The `id` of the created attempt"},"consent_id":{"type":"string","format":"integer","description":"The `id` of the PSD2 consent provided during this attempt"},"api_version":{"type":"string","description":"The API version in which the attempt was created"},"api_mode":{"type":"string","enum":["app","service"],"description":"The API mode of the Customer that queried the API.\u003cbr /\u003e\nThe `App` mode is a possible value only for Connections initiated via the previous API version.\n"},"automatic_fetch":{"type":"boolean","description":"Whether the Connection related to the attempt can be automatically fetched"},"categorize":{"type":"boolean","description":"Whether categorization is applied to transactions fetched during this attempt"},"custom_fields":{"type":"object","description":"The custom fields sent during attempt creation (any request on `/connect`, `/reconnect` or `/refresh` is considered a new attempt)"},"automatic_refresh":{"type":"boolean","description":"Whether the refresh is performed automatically for the Connection associated with this attempt"},"exclude_accounts":{"type":"array","description":"The IDs of accounts that shall not be refreshed","items":{"type":"integer"}},"fetch_from_date":{"type":"string","format":"date","description":"The starting date for fetching the data"},"fetch_to_date":{"type":"string","format":"date","description":"The ending date for fetching the data"},"fetch_scopes":{"type":"array","description":"A list of scopes deriving from the [consent_scopes](#ais-consents-attributes-scopes) options.\u003cbr /\u003e\nPossible values inside the array: `holder_info`, `accounts`, `balance`, `transactions`.\u003cbr /\u003e\nExample: to fetch accounts with a balance, use `consent_scopes`: `accounts` and `fetch_scopes`: `accounts`, `balance`\n","items":{"type":"string","enum":["holder_info","accounts","balance","transactions"]}},"finished":{"type":"boolean","description":"Whether the attempt has finished fetching data"},"finished_recent":{"type":"boolean","description":"Whether the attempt has successfully started fetching data"},"include_natures":{"type":"array","description":"The accounts' natures that are requested to be fetched","items":{"type":"string"}},"interactive":{"type":"boolean","description":"Whether the attempt’s Connection has interactive steps in the Salt Edge Widget"},"locale":{"type":"string","description":"The language used in the Salt Edge Widget.\u003cbr /\u003e\nPossible values: supported languages in the [ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639_language_codes) format.\n"},"partial":{"type":"boolean","description":"Whether the Connection is partially fetched"},"show_consent_confirmation":{"type":"boolean","description":"Whether any consent is given for this attempt’s Connection in the Salt Edge Widget"},"store_credentials":{"type":"boolean","description":"Whether the credentials are stored on the Salt Edge’s side.\u003cbr /\u003eRelevant for Providers with mode: `web` and `api`"},"user_present":{"type":"boolean","description":"Whether the request is initiated by the User from the Client’s application"},"user_agent":{"type":"string","description":"Information transmitted by a web browser or other Client application to a web server, during Attempt"},"device_type":{"type":"string","enum":["mobile","tablet","desktop"],"description":"The type of device that created the attempt"},"remote_ip":{"type":"string","description":"The IP of the device that created the attempt"},"customer_last_logged_at":{"type":"string","format":"date-time","description":"The date \u0026 time when the User was last active in the Client’s application"},"created_at":{"type":"string","format":"date-time","description":"The date \u0026 time when the attempt has been created"},"updated_at":{"type":"string","format":"date-time","description":"The date \u0026 time when the attempt has been updated"},"success_at":{"type":"string","format":"date-time","description":"The date \u0026 time when the attempt has been successfully finished"},"fail_at":{"type":"string","format":"date-time","description":"The date \u0026 time when the attempt failed to finish"},"fail_error_class":{"type":"string","description":"Class of error why the attempt failed"},"fail_message":{"type":"string","description":"Error message explaining why the attempt failed"},"last_stage":{"$ref":"#/components/schemas/Stage"}}},"Stage":{"type":"object","description":"A stage represents a step performed during fetching `accounts`, `transactions`, `holder_info` on `Connect`, `Reconnect`, or `Refresh` endpoints.","properties":{"id":{"type":"string","format":"integer","description":"The `id` of the stage from the data fetching process"},"name":{"type":"string","description":"The title of the stage in the data-fetching process"},"created_at":{"type":"string","format":"date-time","description":"The date \u0026 time when the stage of the data fetching process has been created"},"updated_at":{"type":"string","format":"date-time","description":"The date \u0026 time when the stage of the data fetching process has been updated"}}},"Connection":{"type":"object","description":"A connection represents a set of credentials required to access the [accounts](#ais-accounts) and [transactions](#ais-transactions)\nthrough a specific [Provider](#ais-providers).\n","required":["id","customer_id","customer_identifier","provider_code","provider_name","country_code","status","automatic_refresh","created_at","updated_at","last_consent_id","last_attempt"],"properties":{"id":{"type":"string","format":"integer","description":"The `id` of the created Connection"},"customer_id":{"type":"string","format":"integer","description":"The `id` of the Customer to which the Connection belongs"},"customer_identifier":{"type":"string","description":"The unique external identifier of a Customer (e.g email, `id` on the Client's side)"},"provider_code":{"type":"string","description":"The code assigned by Salt Edge for a particular Provider includes the country code for easier differentiation. I.e.: all Spanish providers' codes end with `_es`.\n"},"provider_name":{"type":"string","description":"The Provider’s `name` used to establish the Connection"},"country_code":{"type":"string","description":"Country code of the Provider"},"status":{"type":"string","enum":["active","inactive","disabled"],"description":"The current status of the Connection"},"categorization":{"type":"string","default":"none","enum":["none","personal","business"],"description":"The categorization type applied to transactions from this Connection"},"categorization_vendor":{"type":"string","description":"The vendor that performed categorization"},"automatic_refresh":{"type":"boolean","description":"Whether the refresh is automatically performed for this Connection"},"next_refresh_possible_at":{"type":"string","format":"date-time","description":"Determines when the next refresh will be available. This field may contain a `null` value if the Connection’s `automatic_fetch`: `false` or is already processing.\n"},"created_at":{"type":"string","format":"date-time","description":"The date and time in UTC when the Connection was created"},"updated_at":{"type":"string","format":"date-time","description":"The date and time in UTC when the Connection was updated"},"last_consent_id":{"type":"string","format":"integer","description":"The `id` of the last provided PSD2 consent"},"last_attempt":{"$ref":"#/components/schemas/Attempt"},"holder_info":{"type":"object","description":"Information about the holder of this Connection","properties":{"names":{"type":"array","nullable":true,"description":"Account holder’s name(s)","items":{"type":"string"}},"emails":{"type":"array","nullable":true,"description":"Account holder’s email(s)","items":{"type":"string"}},"phone_numbers":{"type":"array","nullable":true,"description":"Account holder’s phone number(s)","items":{"type":"string"}},"addresses":{"type":"array","nullable":true,"description":"Account holder’s address(es):","items":{"type":"object","properties":{"city":{"type":"string"},"state":{"type":"string"},"street":{"type":"string"},"country_code":{"type":"string"},"post_code":{"type":"string"}}}},"extra":{"type":"object","nullable":true,"properties":{"ssn":{"type":"string","description":"Social Security Number shortened (last 4 digits)"},"cpf":{"type":"string","description":"Cadastro de Pessoas Físicas (specific to Brazil)"},"birth_date":{"type":"string","description":"Account holder’s date of birth"},"document_number":{"type":"string","description":"Account holder’s identification number"}}}}}}},"CreateConnectionRequestBody":{"type":"object","required":["data"],"properties":{"data":{"type":"object","required":["customer_id","consent"],"properties":{"customer_id":{"type":"string","format":"integer","description":"A unique `id` of the User assigned by Salt Edge"},"customer_identifier":{"type":"string","description":"A unique `id` of the User assigned by the Client"},"consent":{"type":"object","required":["scopes"],"properties":{"scopes":{"type":"array","description":"Data to be allowed for fetching.\u003cbr /\u003e\nThe allowed values for this parameter must fall within the Client’s `allowed_fetch_scopes` and/ or the Provider's `supported_fetch_scopes` restrictions.\u003cbr /\u003e\nPossible values: `holder_info`, `accounts`, `transactions`.\u003cbr /\u003e\n`Accounts` covers both `accounts` and `balance` `fetch_scopes`\n","items":{"type":"string"}},"from_date":{"type":"string","format":"date","description":"Allows to fetch data starting from a specified date"},"to_date":{"type":"string","format":"date","description":"Allows to fetch data up until a specified date"},"period_days":{"type":"integer","description":"Allows to specify the duration of consent validity (in days)"}}},"attempt":{"type":"object","properties":{"fetch_scopes":{"type":"array","description":"A list of scopes requested by Clients from the Provider, deriving from the `consent_scopes` options.\u003cbr /\u003e\nPossible values: `holder_info`, `accounts`, `balance`, `transactions`.\u003cbr /\u003e\nAccounts `consent_scopes` covers `accounts` and `balance` `fetch_scopes`.\n","items":{"type":"string"}},"fetch_from_date":{"type":"string","format":"date","description":"The starting date for fetching the data"},"fetch_to_date":{"type":"string","format":"date","description":"The ending date for fetching the data"},"account_natures":{"type":"array","items":{"type":"string","enum":["account","bonus","card","checking","credit","credit_card","debit_card","ewallet","insurance","investment","loan","mortgage","savings"]}},"custom_fields":{"type":"object","description":"A JSON object that will be sent back on any of the Client's callbacks"},"locale":{"type":"string","description":"The language of the Widget and the language of the returned error message(s). \u003cbr /\u003e\nPossible values: any locale in [ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639_language_codes) format\n"},"store_credentials":{"type":"boolean","default":true,"description":"Whether credentials are stored on Salt Edge's side or not.\u003cbr /\u003eRelevant for Providers with mode: `web` and `api`"},"unduplication_strategy":{"type":"string","default":"mark_as_pending","description":"The unduplication strategy used for duplicated transactions.\u003cbr /\u003e\nThe provided value remains unchanged until another value is sent during `Connections/reconnect` or `Connections/refresh`.\u003cbr /\u003e\u003cbr /\u003e\n`mark_as_pending`: leaves identified duplicated transactions in Pending status for clients that establish connections with providers having a non-null `custom_pendings_period`.\u003cbr /\u003e\n`mark_as_duplicate`: identifies transactions as duplicated and sets the duplicated flag to `true`.\u003cbr /\u003e\n`delete_duplicated`: removes identified duplicated transactions.\u003cbr /\u003e\n"},"return_to":{"type":"string","description":"The URL to which the User will be redirected. By default, this is the Client’s or Partner’s home URL"}}},"widget":{"type":"object","properties":{"show_account_overview":{"type":"boolean","description":"Displays information about connected accounts in the Widget"},"show_consent_confirmation":{"type":"boolean","default":true,"description":"Shows confirmation of the Connection"},"credentials_strategy":{"type":"string","default":"store","description":"The strategy for storing the User’s credentials.\u003cbr /\u003eRelevant for Providers with mode: `web` and `api`.\n"},"javascript_callback_type":{"type":"string","description":"How the Widget interacts with the opener/ parent window"},"disable_provider_search":{"type":"boolean","description":"Enables Clients to disable Provider searches for Users"},"skip_provider_selection":{"type":"boolean","description":"Enables Users to skip the Provider selection page"},"skip_stages_screen":{"type":"boolean","description":"Allows Users to skip the stage screen"},"wait_all_transactions":{"type":"boolean","description":"Allows the User to remain within the Widget until all Transactions have been successfully fetched.\u003cbr /\u003eCannot be combined with `skip_stages_screen`."},"template":{"type":"string","description":"Allows Clients and Partners to configure a template for the Widget.\u003cbr /\u003e By default, Clients use `default_v3` and Partners use `partner_v3`."},"theme":{"type":"string","default":"default","description":"Allows Clients to specify a color theme for the Widget.\u003cbr /\u003e If not set, the Widget uses the User's operating system theme preference by default"},"allowed_countries":{"type":"array","description":"Displays Providers only from specified countries","items":{"type":"string"}},"popular_providers_country":{"type":"string","description":"Display in the Widget the most popular Providers from a specified country.\u003cbr /\u003eIf nothing is sent, the most popular Providers are not shown."},"skip_final_screen":{"type":"boolean","description":"Allows Users to skip the error and success screens"}}},"provider":{"type":"object","properties":{"code":{"type":"string","description":"The code of the required Provider"},"include_sandboxes":{"type":"boolean","description":"Whether to display Sandboxes and Fake Providers or not.\u003cbr /\u003e\nPossible values: `true`, `false`\u003cbr /\u003e\nDefault value: `true` (for Clients in Pending \u0026 Test status); `false` (for Live Clients)\n"},"modes":{"type":"array","description":"Restricts the list of Providers to only those that have the mode included in the array","items":{"type":"string","enum":["oauth","web","api"]}},"regulated":{"type":"boolean","description":"Determines which providers are displayed in the Widget based on their regulatory status.\u003cbr /\u003e\n`true` – only regulated providers are shown.\u003cbr /\u003e\n`false` – only non-regulated providers are shown.\n"}}},"kyc":{"type":"object","properties":{"type_of_account":{"type":"string","description":"The type of Account to be connected, only for KYC purposes"}}},"return_connection_id":{"type":"boolean","description":"Appends `connection_id` to the `return_to` URL"},"return_error_class":{"type":"boolean","description":"Appends `error_class` to the `return_to` URL"},"categorization":{"type":"string","default":"none","enum":["none","personal","business"],"description":"Enables Clients to change the applied categorization type"},"automatic_refresh":{"type":"boolean","description":"Allows Clients to enable/ disable automatic refresh. For Client the default value is `false`, for Partner `true`"}}}}},"ReconnectConnectionRequestBody":{"type":"object","required":["data"],"properties":{"data":{"type":"object","required":["consent"],"properties":{"consent":{"type":"object","required":["scopes"],"properties":{"scopes":{"type":"array","description":"Data to be allowed for fetching.\u003cbr /\u003e\nThe allowed values for this parameter must fall within the Client’s `allowed_fetch_scopes` and/ or the Provider's `supported_fetch_scopes` restrictions.\u003cbr /\u003e\nPossible values: `holder_info`, `accounts`, `transactions`.\u003cbr /\u003e\n`Accounts` covers both `accounts` and `balance` `fetch_scopes`\n","items":{"type":"string"}},"from_date":{"type":"string","format":"date","description":"Allows Salt Edge to fetch data starting from a specified date"},"to_date":{"type":"string","format":"date","description":"Allows Salt Edge to fetch data up until a specified date"},"period_days":{"type":"integer","description":"Allows Clients to specify the duration of consent validity (in days)"}}},"attempt":{"type":"object","properties":{"fetch_scopes":{"type":"array","description":"A list of scopes requested by Clients from the Provider, deriving from the `consent_scopes` options.\u003cbr /\u003e\nPossible values: `holder_info`, `accounts`, `balance`, `transactions`.\u003cbr /\u003e\nAccounts `consent_scopes` covers `accounts` and `balance` `fetch_scopes`.\n","items":{"type":"string"}},"fetch_from_date":{"type":"string","format":"date","description":"The starting date for fetching the data"},"fetch_to_date":{"type":"string","format":"date","description":"The ending date for fetching the data"},"account_natures":{"type":"array","items":{"type":"string","enum":["account","bonus","card","checking","credit","credit_card","debit_card","ewallet","insurance","investment","loan","mortgage","savings"]}},"exclude_accounts":{"type":"array","description":"The IDs of accounts that do not require refreshing","items":{"type":"integer"}},"custom_fields":{"type":"object","description":"A JSON object that will be sent back on any of the Client's callbacks"},"locale":{"type":"string","description":"The language of the Widget and the language of the returned error message(s).\u003cbr /\u003e\nPossible values: any locale in [ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639_language_codes) format.\n"},"store_credentials":{"type":"boolean","default":true,"description":"Whether credentials are stored on Salt Edge's side or not.\u003cbr /\u003eRelevant for Providers with mode: `web` and `api`"},"unduplication_strategy":{"type":"string","default":"mark_as_pending","description":"The unduplication strategy used for duplicated transactions.\u003cbr /\u003e\nThe provided value remains unchanged until another value is sent during `Connections/reconnect` or `Connections/refresh`.\u003cbr /\u003e\u003cbr /\u003e\n`mark_as_pending`: leaves identified duplicated transactions in Pending status for clients that establish connections with providers having a non-null `custom_pendings_period`.\u003cbr /\u003e\n`mark_as_duplicate`: identifies transactions as duplicated and sets the duplicated flag to `true`.\u003cbr /\u003e\n`delete_duplicated`: removes identified duplicated transactions.\u003cbr /\u003e\n"},"return_to":{"type":"string","description":"The URL to which the User will be redirected. By default, this is the Client’s or Partner’s home URL"}}},"widget":{"type":"object","properties":{"show_account_overview":{"type":"boolean","description":"Displays information about connected accounts in the Widget"},"show_consent_confirmation":{"type":"boolean","default":true,"description":"Shows confirmation of the Connection"},"credentials_strategy":{"type":"string","default":"store","description":"The strategy for storing the User’s credentials.\u003cbr /\u003eRelevant for Providers with mode: `web` and `api`."},"javascript_callback_type":{"type":"string","description":"How the Widget interacts with the opener/ parent window"},"skip_stages_screen":{"type":"boolean","description":"Allows Users to skip the stage screen"},"wait_all_transactions":{"type":"boolean","description":"Allows the User to remain within the Widget until all Transactions have been successfully fetched.\u003cbr /\u003eCannot be combined with `skip_stages_screen`."},"template":{"type":"string","description":"Allows Clients and Partners to configure a template for the Widget.\u003cbr /\u003e By default, Clients use `default_v3` and Partners use `partner_v3`."},"theme":{"type":"string","default":"default","description":"Allows Clients to specify a color theme for the Widget.\u003cbr /\u003e If not set, the Widget uses the User's operating system theme preference by default"},"skip_final_screen":{"type":"boolean","description":"Allows Users to skip the error and success screens"}}},"return_connection_id":{"type":"boolean","description":"Appends `connection_id` to the `return_to` URL"},"return_error_class":{"type":"boolean","description":"Appends `error_class` to the `return_to` URL"},"automatic_refresh":{"type":"boolean","description":"Allows Clients to enable/ disable automatic refresh."},"override_credentials_strategy":{"type":"string","enum":["ask","override"],"description":"Allows Clients to choose a strategy for credentials:\u003cbr /\u003e\n`ask` - the User will be prompted to confirm the credentials override upon submitting the form\u003cbr /\u003e\n`override` - new credentials will automatically override the old ones\n"}}}}},"RefreshConnectionRequestBody":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"return_connection_id":{"type":"boolean","description":"Appends `connection_id` to the `return_to` URL"},"return_error_class":{"type":"boolean","description":"Appends `error_class` to the `return_to` URL"},"automatic_refresh":{"type":"boolean","description":"Allows Clients to enable/ disable automatic refresh.\u003cbr /\u003e Default value is the one that was used when the Connection had been created"},"override_credentials_strategy":{"type":"string","enum":["ask","override"],"description":"Allows Clients to choose a strategy for credentials:\u003cbr /\u003e\n`ask` - the User will be prompted to confirm the credentials override upon submitting the form\u003cbr /\u003e\n`override` - new credentials will automatically override the old ones\n"},"show_widget":{"type":"boolean","description":"Enables initiating a refresh without having to open the Widget"},"attempt":{"type":"object","properties":{"fetch_scopes":{"type":"array","description":"A list of scopes requested by Clients from the Provider, deriving from the `consent_scopes` options.\u003cbr /\u003e\nPossible values inside the array: `holder_info`, `accounts`, `balance`, `transactions`.\u003cbr /\u003e\nAccounts `consent_scopes` covers `accounts` and `balance` `fetch_scopes`.\n","items":{"type":"string"}},"fetch_from_date":{"type":"string","format":"date","description":"The starting date for fetching the data"},"fetch_to_date":{"type":"string","format":"date","description":"The ending date for fetching the data"},"account_natures":{"type":"array","items":{"type":"string","enum":["account","bonus","card","checking","credit","credit_card","debit_card","ewallet","insurance","investment","loan","mortgage","savings"]}},"exclude_accounts":{"type":"array","description":"The IDs of accounts that do not require refreshing","items":{"type":"integer"}},"custom_fields":{"type":"object","description":"A JSON object that will be sent back on any of the Client's callbacks"},"locale":{"type":"string","description":"The language of the Widget and the language of the returned error message(s).\u003cbr /\u003e\nPossible values: any locale in [ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639_language_codes) format.\n"},"unduplication_strategy":{"type":"string","default":"mark_as_pending","description":"The unduplication strategy used for duplicated transactions.\u003cbr /\u003e\nThe provided value remains unchanged until another value is sent during `Connections/reconnect` or `Connections/refresh`.\u003cbr /\u003e\u003cbr /\u003e\n`mark_as_pending`: leaves identified duplicated transactions in Pending status for clients that establish connections with providers having a non-null `custom_pendings_period`.\u003cbr /\u003e\n`mark_as_duplicate`: identifies transactions as duplicated and sets the duplicated flag to `true`.\u003cbr /\u003e\n`delete_duplicated`: removes identified duplicated transactions.\u003cbr /\u003e\n"},"return_to":{"type":"string","description":"The URL to which the User will be redirected. By default, this is the Client’s or Partner’s home URL"}}},"widget":{"type":"object","properties":{"show_account_overview":{"type":"boolean","description":"Displays information about connected accounts in the Widget"},"javascript_callback_type":{"type":"string","description":"How the Widget interacts with the opener/ parent window"},"skip_stages_screen":{"type":"boolean","description":"Allows Users to skip the stage screen"},"wait_all_transactions":{"type":"boolean","description":"Allows the User to remain within the Widget until all Transactions have been successfully fetched.\u003cbr /\u003eCannot be combined with `skip_stages_screen`."},"template":{"type":"string","description":"Allows Clients and Partners to configure a template for the Widget.\u003cbr /\u003e By default, Clients use `default_v3` and Partners use `partner_v3`."},"theme":{"type":"string","default":"default","description":"Allows Clients to specify a color theme for the Widget.\u003cbr /\u003e If not set, the Widget uses the User's operating system theme preference by default"},"skip_final_screen":{"type":"boolean","description":"Allows Users to skip the error and success screens"}}}}}}},"BackgroundRefreshConnectionRequestBody":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"attempt":{"type":"object","properties":{"fetch_scopes":{"type":"array","description":"A list of scopes requested by Clients from the Provider, deriving from the `consent_scopes` options.\u003cbr /\u003e\nPossible values inside the array: `holder_info`, `accounts`, `balance`, `transactions`.\u003cbr /\u003e\nAccounts `consent_scopes` covers `accounts` and `balance` `fetch_scopes`.\n","items":{"type":"string"}},"fetch_from_date":{"type":"string","format":"date","description":"The starting date for fetching the data"},"fetch_to_date":{"type":"string","format":"date","description":"The ending date for fetching the data"},"account_natures":{"type":"array","items":{"type":"string","enum":["account","bonus","card","checking","credit","credit_card","debit_card","ewallet","insurance","investment","loan","mortgage","savings"]}},"exclude_accounts":{"type":"array","description":"The IDs of accounts that do not require refreshing","items":{"type":"integer"}},"custom_fields":{"type":"object","description":"A JSON object that will be sent back on any of the Client's callbacks"},"unduplication_strategy":{"type":"string","default":"mark_as_pending","description":"The unduplication strategy used for duplicated transactions.\u003cbr /\u003e\nThe provided value remains unchanged until another value is sent during `Connections/reconnect` or `Connections/refresh`.\u003cbr /\u003e\u003cbr /\u003e\n`mark_as_pending`: leaves identified duplicated transactions in Pending status for clients that establish connections with providers having a non-null `custom_pendings_period`.\u003cbr /\u003e\n`mark_as_duplicate`: identifies transactions as duplicated and sets the duplicated flag to `true`.\u003cbr /\u003e\n`delete_duplicated`: removes identified duplicated transactions.\u003cbr /\u003e\n"}}},"automatic_refresh":{"type":"boolean","description":"Allows Clients to enable/ disable automatic refresh.\u003cbr /\u003e Default value is the one that was used when the Connection had been created"}}}}},"UpdateConnectionRequestBody":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"automatic_refresh":{"type":"boolean","description":"Allows Clients to enable/ disable automatic refresh.\u003cbr /\u003e\nIf no value is sent, the setting remains unchanged\n"},"categorization":{"type":"string","default":"none","enum":["none","personal","business"],"description":"The applied type of categorization can be changed by Clients. If no value is sent, the setting remains unchanged."},"status":{"type":"string","description":"The status of the Connection can be changed to `inactive` by Clients.\u003cbr /\u003e\nPossible values: `inactive`\u003cbr /\u003e\nIf no value is sent, the value remains unchanged\n"},"store_credentials":{"type":"boolean","description":"Whether credentials are stored on Salt Edge's side or not.\u003cbr /\u003e\nRelevant for Providers with mode: `web` and `api`.\u003cbr /\u003e\nPossible values: `false`\u003cbr /\u003e\nIf no value is sent, the setting remains unchanged\n"}}}}},"ConnectionConnectResponse":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"expires_at":{"type":"string","format":"date-time"},"connect_url":{"type":"string"},"customer_id":{"type":"string","format":"integer"}}}}},"ConnectionReconnectResponse":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"expires_at":{"type":"string","format":"date-time"},"connect_url":{"type":"string"},"customer_id":{"type":"string","format":"integer"}}}}},"ConnectionRefreshResponse":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"expires_at":{"type":"string","format":"date-time"},"connect_url":{"type":"string"},"customer_id":{"type":"string","format":"integer"}}}}},"ConnectionResponse":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/Connection"}}},"ConnectionsResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Connection"}},"meta":{"$ref":"#/components/schemas/MetaObject"}}},"RemovedConnectionResponse":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"id":{"type":"string","description":"`id` of the connection"},"removed":{"type":"boolean","default":true}}}}},"Consent":{"type":"object","properties":{"id":{"type":"string","format":"integer","description":"The `id` of the created Consent"},"connection_id":{"type":"string","format":"integer","description":"The `id` of the Connection to which the consent belongs"},"customer_id":{"type":"string","format":"integer","description":"The `id` of the [User](/#glossary-user%2F-customer%2F-psu) who gave the consent"},"status":{"type":"string","enum":["active","expired","revoked"],"description":"The current status of the consent"},"scopes":{"type":"array","description":"Data to be allowed for fetching.\u003cbr /\u003e\nThe allowed values for this parameter must fall within the Client’s `allowed_fetch_scopes` and/ or the Provider's `supported_fetch_scopes` restrictions.\u003cbr /\u003e\nPossible values: `holder_info`, `accounts`, `transactions`.\u003cbr /\u003e\n`Accounts` covers both `accounts` and `balance` `fetch_scopes`\n","items":{"type":"string"}},"period_days":{"type":"integer","description":"The duration of consent validity (in days)"},"expires_at":{"type":"string","format":"date-time","description":"The date \u0026 time in UTC when the consent expires"},"from_date":{"type":"string","format":"date","description":"Allows to fetch data starting from a specified date"},"to_date":{"type":"string","format":"date","description":"Data can be fetched up until a specified date"},"collected_by":{"type":"string","enum":["client","saltedge"],"description":"The entity that collects the consent"},"revoked_at":{"type":"string","format":"date-time","description":"The date \u0026 time in UTC when the consent has been revoked"},"revoke_reason":{"type":"string","enum":["expired","client","provider","saltedge"],"description":"The reason why the consent has been revoked"},"created_at":{"type":"string","format":"date-time","description":"The date \u0026 time in UTC when the consent has been created"},"updated_at":{"type":"string","format":"date-time","description":"The date \u0026 time in UTC when the consent has been updated"}}},"ConsentResponse":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/Consent"}}},"ConsentsResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Consent"}},"meta":{"$ref":"#/components/schemas/MetaObject"}}},"Country":{"type":"object","description":"The country is represented just as a string.\nWe're using [ISO 3166-1 alpha-2](http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) country codes.\nThus, all the country codes will have exactly two uppercase letters.\nThere are two special cases:\n\n- \"Other\", encoded as `XO`\n- \"Fake\", encoded as `XF`\n","properties":{"name":{"type":"string","description":"Name of the country"},"code":{"type":"string","description":"Country code as dated in ISO 3166-1 alpha-2"},"refresh_start_time":{"type":"integer","description":"Local country time when connections will be automatically refreshed. Possible values are from `0` to `23`"}}},"CountriesResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Country"}}}},"Customer":{"type":"object","description":"A `Customer` represents a single end-user of the Payment Initiation API. The Client or Partner uses the API to create a Payment, which involve transferring funds from the Customer’s account to a specified recipient.","required":["categorization_type"],"properties":{"customer_id":{"type":"string","format":"integer","description":"The `id` of the User"},"identifier":{"type":"string","description":"The unique external identifier of a Customer (e.g email, `id` on the Client's side)"},"categorization_type":{"type":"string","enum":["personal","business"],"description":"Type of categorization."},"blocked_at":{"type":"string","format":"date-time","description":"The date \u0026 time in UTC when a Customer has been blocked"},"created_at":{"type":"string","format":"date-time","description":"The date \u0026 time in UTC when a Customer has been created"},"updated_at":{"type":"string","format":"date-time","description":"The date \u0026 time in UTC when a Customer has been updated"}}},"PartnerCustomer":{"type":"object","description":"A `Customer` represents a single end-user of the Payment Initiation API. The Client or Partner uses the API to create a Payment, which involve transferring funds from the Customer’s account to a specified recipient.","properties":{"email":{"type":"string","description":"The `email` of the User"},"customer_id":{"type":"string","format":"integer","description":"The `id` of the User"},"identifier":{"type":"string","description":"The unique external identifier of a Customer (e.g email, `id` on the Client's side)"},"blocked_at":{"type":"string","format":"date-time","description":"The date \u0026 time in UTC when a Customer has been blocked"},"created_at":{"type":"string","format":"date-time","description":"The date \u0026 time in UTC when a Customer has been created"},"updated_at":{"type":"string","format":"date-time","description":"The date \u0026 time in UTC when a Customer has been updated"}}},"ClientCustomerRequestBody":{"type":"object","description":"Customer object.","required":["data"],"properties":{"data":{"type":"object","required":["identifier"],"properties":{"identifier":{"type":"string","description":"A unique `identifier` of the User assigned by the Client"}}}}},"PartnerCustomerRequestBody":{"type":"object","description":"Customer object.","required":["data"],"properties":{"data":{"type":"object","required":["email"],"properties":{"email":{"type":"string","description":"A unique `email` of the User assigned by the Partner"},"kyc":{"type":"object","properties":{"citizenship_code":{"type":"string","description":"Possible values: country code as mentioned in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)"},"date_of_birth":{"type":"string","format":"date"},"full_name":{"type":"string"},"gender":{"type":"string"},"legal_name":{"type":"string"},"place_of_birth":{"type":"string"},"registered_office_code":{"type":"string","description":"Possible values: country code as dated in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)"},"registered_office_address":{"type":"string"},"registration_number":{"type":"string"},"residence_address":{"type":"string"},"type_of_account":{"type":"string"}}}}}}},"CustomerResponse":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/Customer"}}},"CreatedClientCustomerResponse":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/Customer"}}},"CreatedPartnerCustomerResponse":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PartnerCustomer"}}},"RemovedCustomerResponse":{"type":"object","properties":{"data":{"type":"object","properties":{"deleted":{"type":"boolean","default":true},"id":{"type":"string","format":"integer"}}}}},"CustomersResponse":{"type":"object","description":"A list of all customers.","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Customer"}},"meta":{"$ref":"#/components/schemas/MetaObject"}}},"Provider":{"type":"object","description":"A Provider is a source of financial data. We recommend you update all of the providers' fields at least daily.","required":["id","code","name","country_code","bic_codes","identification_codes","status","mode","regulated","logo_url","timezone","supported_iframe_embedding","optional_interactivity","customer_notified_on_sign_in","created_at","updated_at"],"properties":{"id":{"type":"string","format":"integer","description":"The `id` of the Provider"},"code":{"type":"string","description":"A distinct code for identifying a Provider"},"name":{"type":"string","description":"Provider’s name"},"country_code":{"type":"string","description":"Provider’s country code in [ISO 3166-1 alpha-2 format](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)"},"bic_codes":{"type":"array","description":"List of BIC codes identifying supported branches of a specific Provider","items":{"type":"string"}},"dynamic_registration_code":{"type":"string","description":"The dynamic registration code assigned to the Provider"},"identification_codes":{"type":"array","description":"The list of codes identifying the supported branches of a specific Provider","items":{"type":"string"}},"group_code":{"type":"string","description":"The code of the group the Provider belongs to"},"group_name":{"type":"string","description":"The name of the group the Provider belongs to"},"hub":{"type":"string","description":"The hub that the Provider is affiliated with"},"status":{"type":"string","description":"Provider’s status that indicates its state.\u003cbr /\u003e\nPossible values are:\n\n- `active` - Providers with active status are accessible, returned on both [List](#ais-providers-list) and [Show](#ais-providers-show) endpoints, and visible within the Salt Edge Widget for Users.\n- `inactive` - Providers with an inactive status are returned on both [List](#ais-providers-list) and [Show](#ais-providers-show) endpoints, but are not visible in the Salt Edge Widget for Users.\n- `disabled` - Providers with a `disabled` status are neither returned on [List](#ais-providers-list) and [Show](#ais-providers-show) endpoints, nor visible in the Salt Edge Widget for Users.\n"},"mode":{"type":"string","description":"The way a Provider is accessed.\u003cbr /\u003e\nPossible values are:\n\n  - `oauth` - access through the Provider's dedicated API redirects the User to the Provider's page for authorization.\n  - `web` - access through the Provider's web interface using screen scraping technology. Therefore, the User undergoes the same authorization flow as on the Provider's web interface using identical credentials in the Salt Edge Widget.\n  - `api` - access through a dedicated (`regulated: true`) or non-dedicated (`regulated: false`) Provider's API. Some required credential fields might be present, which the User must complete (such as IBAN, username, etc.). In the case of a dedicated API, an interactive redirect might be present, but required credential fields must still be completed by the User (e.g., IBAN, username, etc.). Using these credentials, the User is authorized on the Provider’s side.\n"},"regulated":{"type":"boolean","description":"Whether the Provider is integrated via a regulated channel under Open Banking/ PSD2"},"logo_url":{"type":"string","description":"The URL for the Provider logo. May contain a placeholder for Providers with missing logos"},"home_url":{"type":"string","description":"The URL of the main page of the provider"},"login_url":{"type":"string","description":"Point of entrance to provider’s login web interface"},"timezone":{"type":"string","description":"Time zone data for the capital/ major city in a region corresponding to the Provider"},"supported_iframe_embedding":{"type":"boolean","description":"Indicates whether the Provider supports being embedded within an iframe.\u003cbr /\u003eIf set to `true`, the Provider's content can be securely displayed within an iframe on external websites."},"optional_interactivity":{"type":"boolean","description":"Provider that supports toggling the `interactive` and `automatic_fetch` flags after connecting.\u003cbr /\u003eRelevant for Providers with mode: `web`\n"},"customer_notified_on_sign_in":{"type":"boolean","description":"Whether the Provider will notify the Customer upon a login attempt"},"created_at":{"type":"string","format":"date-time","description":"The timestamp indicating when the Provider was integrated"},"updated_at":{"type":"string","format":"date-time","description":"The timestamp of the most recent update to any of the Provider's attributes"},"automatic_fetch":{"type":"boolean","description":"Whether the Provider's Connections can be automatically fetched, with performance contingent on the `optional_interactivity` flag"},"custom_pendings_period":{"type":"integer","description":"Populated when custom_pendings: `true`.\u003cbr /\u003eDisplays the number of days corresponding to the custom pending period implemented by the Provider."},"holder_info":{"type":"array","description":"Contains information on the Account holder details retrievable from the requested Provider","items":{"type":"string"}},"instruction_for_connections":{"type":"string","description":"Provides instructions or guidance for establishing Connections with the Provider. It may contain information on the steps Users need to follow during the connection setup process."},"interactive_for_connections":{"type":"boolean","description":"Indicates whether the Provider requires the User to perform an interactive step"},"max_consent_days":{"type":"integer","description":"The maximum allowed consent duration.\u003cbr /\u003eIf the value is `null`, then there are no limits"},"max_fetch_interval":{"type":"integer","default":60,"description":"The maximum number of days for which a Provider can return transaction data.\u003cbr /\u003eThe maximum value varies depending on the Provider."},"fetch_policies":{"type":"object"},"max_interactive_delay":{"type":"integer","description":"The delay in seconds before an Unfinished error is raised"},"refresh_timeout":{"type":"integer","description":"The amount of time, in minutes, after which the Provider's Connections are allowed to be refreshed"},"supported_account_extra_fields":{"type":"array","description":"An array of possible extra fields associated with Accounts that can be fetched","items":{"type":"string"}},"supported_account_natures":{"type":"array","description":"An array of possible [Account natures](#ais-accounts-attributes-nature) to be fetched","items":{"type":"string"}},"supported_account_types":{"type":"array","description":"Corporate accounts are identified as `Business` accounts.","items":{"type":"string","enum":["personal","business"]}},"supported_fetch_scopes":{"type":"array","description":"An array of supported [fetch_scopes](#ais-attempts-attributes-fetch_scopes)","items":{"type":"string"}},"supported_transaction_extra_fields":{"type":"array","description":"An array of possible [transaction extra](#ais-transactions-attributes-extra) fields to be fetched","items":{"type":"string"}},"payment_templates":{"type":"array","description":"Identifiers of the payment templates supported by this Provider","items":{"type":"string"}},"instruction_for_payments":{"type":"string","description":"Provides instructions or guidance for initiating Payments with the Provider"},"interactive_for_payments":{"type":"boolean","description":"Indicates whether the Provider requires the User to perform an interactive step"},"required_payment_fields":{"type":"array","description":"The mandatory payment attributes. If any of these fields are not passed, the Payment will not be initiated successfully","items":{"type":"object"}},"supported_payment_fields":{"type":"array","description":"If these fields are passed, they will be used by the Provider. Otherwise, the Payment will be processed even without them","items":{"type":"object"}},"no_funds_rejection_supported":{"type":"boolean","description":"A flag indicating whether the Provider supports explicit handling of Payment rejection due to insufficient funds"},"credentials_fields":{"type":"array","description":"Contains the types and details of credentials required from the User during the Connection setup process","items":{"type":"object","required":["name","english_name","localized_name","nature","optional","position"],"properties":{"name":{"type":"string","description":"the field's name that should be used as a key in the credentials object"},"english_name":{"type":"string","description":"the field's name in US English"},"localized_name":{"type":"string","description":"the name of the field in the provider's main language"},"nature":{"type":"string","enum":["text","password","select","dynamic_select","file","number"]},"optional":{"type":"boolean","description":"whether the input for this field is required by the provider"},"extra":{"type":"object","description":"extra information about the field"},"position":{"type":"integer","description":"the field's position in the public user interface"},"field_options":{"$ref":"#/components/schemas/ProviderFieldOptions"}}}},"interactive_fields":{"type":"array","description":"Contains the types and details of interactive elements that the User may need to provide during the Connection setup process","items":{"type":"object","required":["name","english_name","localized_name","nature","optional","position"],"properties":{"name":{"type":"string","description":"the field's name that should be used as a key in the credentials object"},"english_name":{"type":"string","description":"the field's name in US English"},"localized_name":{"type":"string","description":"the name of the field in the provider's main language"},"nature":{"type":"string","enum":["text","password","select","dynamic_select","file","number"]},"optional":{"type":"boolean","description":"whether the input for this field is required by the provider"},"extra":{"type":"object","description":"extra information about the field"},"position":{"type":"integer","description":"the field's position in the public user interface"},"field_options":{"$ref":"#/components/schemas/ProviderFieldOptions"}}}}}},"ProviderResponse":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/Provider"}}},"ProvidersResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Provider"}},"meta":{"$ref":"#/components/schemas/MetaObject"}}},"ProviderFieldOptions":{"type":"object","description":"Some providers ask their users to select a secret word or an answer to a question as a security measure. In this case, the provider will contain a field of select type. The field will contain an array of field_options objects, which describe the possible choices for the user.\n","required":["name","english_name","localized_name","option_value","selected"],"properties":{"name":{"type":"string","description":"the name of the field option"},"english_name":{"type":"string","description":"the option's name in US English"},"localized_name":{"type":"string","description":"the name of the field in the provider's main language"},"option_value":{"type":"string","description":"the value of the option that needs to be passed as credentials"},"selected":{"type":"boolean","description":"whether the choice is selected by default"}}},"Rate":{"type":"object","description":"A rate is an index of any currency value in relation to the USD currency.","properties":{"currency_code":{"type":"string","description":"The currency code in [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) three-letter format"},"rate":{"type":"number","format":"decimal","description":"The currency's ratio compared to the `USD` currency"},"fail":{"type":"boolean","description":"The field indicates whether the currency rate is up-to-date.\u003cbr /\u003e\nIf `true`, it means that the rate has been retrieved from the previous available date\n"}}},"RatesResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Rate"}},"meta":{"type":"object","properties":{"issued_on":{"type":"string","format":"date"}}}}},"Transaction":{"type":"object","required":["id","account_id","duplicated","mode","status","made_on","amount","currency_code","description","category","extra","created_at","updated_at"],"properties":{"id":{"type":"string","format":"integer","description":"The `id` of the transaction"},"account_id":{"type":"string","format":"integer","description":"The `id` of the Account the transaction belongs to"},"duplicated":{"type":"boolean","description":"Whether the transaction is a duplicate or not"},"mode":{"type":"string","enum":["normal","fee","transfer"]},"status":{"type":"string","enum":["posted","pending"]},"made_on":{"type":"string","format":"date","description":"The date when the transaction was made"},"amount":{"type":"number","format":"float","description":"Transaction’s amount"},"currency_code":{"type":"string","description":"Transaction’s currency code"},"description":{"type":"string","description":"Transaction’s description"},"category":{"type":"string","description":"Transaction’s category"},"extra":{"$ref":"#/components/schemas/TransactionExtra"},"created_at":{"type":"string","format":"date-time","description":"Time and date when the transaction was imported"},"updated_at":{"type":"string","format":"date-time","description":"The last time the transaction’s attributes were changed by the Client"}}},"TransactionExtra":{"type":"object","properties":{"account_balance_snapshot":{"type":"number","format":"float","description":"The balance of the Account at the moment when the transaction was imported"},"account_number":{"type":"string","description":"The number of the Account to which the transaction belongs"},"additional":{"type":"string","description":"Additional information is recommended for use in concatenation with the original description, if available"},"asset_amount":{"type":"number","format":"float","description":"The original transaction amount in asset units"},"asset_code":{"type":"string","description":"Asset commonly used abbreviation (Ex.: `BTC` - Bitcoin, `XAU` - Gold \u0026 Silver index, etc.)"},"categorization_confidence":{"type":"number","format":"float","description":"A value from `0` to `1` represents the probability that the current category is the correct one"},"check_number":{"type":"string","description":"The payee's transaction check number"},"closing_balance":{"type":"number","format":"float","description":"The Account balance after the transaction has been imported"},"constant_code":{"type":"string","description":"Payment reference for cashless domestic Payments (transfers)"},"convert":{"type":"boolean","description":"Whether the transaction amount was converted using exchange rates or not"},"customer_category_code":{"type":"string","description":"The category that was categorized by the rules created by the Customer"},"customer_category_name":{"type":"string","description":"The category that was categorized by the rules created by the Customer"},"exchange_rate":{"type":"object","description":"The exchange rate that was applied to the converted transaction"},"id":{"type":"string","format":"integer","description":"The transaction's identifier on the Provider’s end (not to be confused with the Salt Edge transaction `id`)"},"end_to_end_id":{"type":"string","description":"A unique identifier set by the merchant, typically used for reconciliation purposes"},"information":{"type":"string","description":"Information regarding the transaction"},"mcc":{"type":"string","description":"The transaction’s Merchant [Category Code](https://www.irs.gov/irb/2004-31_IRB)"},"merchant_id":{"type":"string","format":"integer","description":"The merchant's identifier"},"opening_balance":{"type":"number","format":"float","description":"The Account balance before the transaction is imported"},"original_amount":{"type":"number","format":"float","description":"The native amount of the transaction in the transaction's currency (provided with the `original_currency_code`)"},"original_category":{"type":"string","description":"The original category of the transaction"},"original_currency_code":{"type":"string","description":"The native currency of the transaction (provided with `original_amount`)"},"original_subcategory":{"type":"string","description":"The original subcategory of the transaction"},"payee":{"type":"string","description":"The IBAN or Account nr. to whom the money was paid"},"payee_information":{"type":"string","description":"Additional payee information as company/ name/ vendor etc."},"payer":{"type":"string","description":"The IBAN or Account nr. of who paid the money"},"payer_information":{"type":"string","description":"Additional payer information as company/ name/ vendor etc."},"possible_duplicate":{"type":"boolean","description":"It is set to `true` if the current transaction duplicates the `amount`, `made_on`, and `currency_code` of any transaction parsed in a previous attempt"},"posted_by_aspsp":{"type":"boolean","description":"Indicates that the transaction is marked as `posted` (or `booked`) by the Provider but has the pending status assigned by Salt Edge due to `custom_pendings_period` logic.\u003cbr /\u003e\nA posted transaction is a fully processed and confirmed financial transaction that has been officially recorded in the Account, reflecting the updated balance.\n"},"posting_date":{"type":"string","format":"date","description":"Date when the transaction appears in the statement"},"posting_time":{"type":"string","description":"Time in `HH:MM:SS` format, representing the time when the transaction appears in the statement"},"record_number":{"type":"string","description":"Bank record number"},"specific_code":{"type":"string","description":"Additional identification information for cashless domestic payments (transfers)"},"tags":{"type":"array","description":"User-defined information in the Provider or e-wallet interface, assigned to a transaction record is provided (not category)","items":{"type":"string"}},"time":{"type":"string","format":"time","description":"The time when the transaction was made"},"transfer_account_name":{"type":"string","description":"The name of the linked Account"},"type":{"type":"string","description":"The transaction type"},"unit_price":{"type":"number","format":"float","description":"Price per unit (used with units, available for investment accounts nature only)"},"units":{"type":"number","format":"float","description":"Amount of units owned (used with `unit_price`, available for investment accounts nature only)"},"variable_code":{"type":"string","description":"Identifies the tax subject to the Tax Office, used for domestic payments (transfers)"}}},"UpdateTransactionsRequestBody":{"type":"object","required":["data"],"properties":{"data":{"type":"object","required":["connection_id","transaction_ids","duplicate"],"properties":{"connection_id":{"type":"string","format":"integer","description":"`id` of the Connection to which transactions belong"},"transaction_ids":{"type":"array","description":"The array of transactions ids for which the update should be made","items":{"type":"string","format":"integer"}},"duplicate":{"type":"boolean","enum":[true,false],"description":"Marks the provided transactions as duplicated"}}}}},"UpdateTransactionsResponse":{"type":"object","properties":{"data":{"type":"object","properties":{"duplicated":{"type":"boolean","default":true},"transaction_ids":{"type":"array","items":{"type":"string","format":"integer"}}}}}},"TransactionsResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Transaction"}},"meta":{"$ref":"#/components/schemas/MetaObject"}}},"ApiError":{"type":"object","description":"Error","required":["error","request"],"properties":{"error":{"type":"object","required":["class","message","documentation_url","request_id"],"properties":{"class":{"type":"string","description":"The class of the error"},"message":{"type":"string","description":"A message describing the error"},"documentation_url":{"type":"string","description":"A link for error documentation"},"request_id":{"type":"string","description":"A unique identifier for this specific HTTP request. Can be sent to support for debugging"}}},"request":{"type":"object","description":"The body of the request that caused the error"}}},"BulkPaymentTemplate":{"type":"object","description":"The bulk payment template resource contains a set of required and optional attributes that need to be filled in order to successfully execute a bulk payment.\n","properties":{"identifier":{"type":"string","description":"unique identifier of the payment template"},"description":{"type":"string","description":"additional information related to the template"},"creditors_attributes":{"type":"array","description":"list of optional and required creditors' attributes for a payment from the bulk","items":{"$ref":"#/components/schemas/BulkPaymentTemplateField"}},"shared_payment_attributes":{"type":"array","description":"list of optional and required attributes common for all payments from the bulk","items":{"$ref":"#/components/schemas/BulkPaymentTemplateField"}}}},"BulkPaymentTemplatesResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/BulkPaymentTemplate"}}}},"BulkPaymentTemplateField":{"type":"object","properties":{"name":{"type":"string","description":"the attributes’s name that should be used as a key in the credentials object"},"english_name":{"type":"string","description":"the attributes’s name in US English"},"localized_name":{"type":"string","description":"The field’s name in the provider's main language"},"nature":{"type":"string","enum":["text","password","select","file","number","dynamic_select"],"description":"Nature"},"position":{"type":"integer","description":"the attributes’s position in the public user interface"},"extra":{"$ref":"#/components/schemas/BulkPaymentTemplateExtraField"},"optional":{"type":"boolean","description":"whether the input for this field is optional or not"}}},"BulkPaymentTemplateExtraField":{"type":"object","description":"The following represents the object you get in the `extra` field of the payment field object.","properties":{"validation_regexp":{"type":"string","description":"the regexp used for the payment field validation"}}},"BulkPayment":{"type":"object","description":"A payment represents the process of transferring funds through a specific [Provider](#ais-providers).\n","properties":{"id":{"type":"string","format":"integer","description":"The `id` of the created Payment"},"customer_id":{"type":"string","format":"integer","description":"The `id` of the Customer who initiated the Payment"},"provider_code":{"type":"string","description":"The code of the Provider through which the Payment was created and assigned by Salt Edge for a particular Provider, including the country code for easier differentiation. I.e.: all Spanish providers' codes end with `_es`\n"},"provider_name":{"type":"string","description":"The Provider’s `name` used to establish the Payment"},"refresh_interval":{"type":"integer","description":"Defines the interval, in seconds, after which a Payment should be refreshed. This parameter specifies the number of seconds between each refresh attempt to update or verify the payment status.\n"},"refresh_timeout":{"type":"integer","description":"Sets the timeout, in seconds, after which the Payment refresh attempts should stop. This parameter limits the total duration for which refresh attempts are made."},"status":{"type":"string","description":"The current status of the Payment. Possible values are:\n- `initiated` - a Payment request was initiated, and Salt Edge created the attempt. The User is ready to be redirected to the Widget for Consent or directly to the Provider.\n- `initiated_info_required` - a Payment request was initiated, and Salt Edge created the attempt. The user is ready to be redirected to the Widget to choose the Provider or provide additional information.\n- `authorizing` - the User completed all necessary steps in the Salt Edge Widget, and the request was sent to the Provider.\n- `authorized` - the User completed the authorization journey on the Provider’s side.\n- `settled` - the settlement process has been completed by the Provider and the funds have been successfully transferred to the creditor’s account.\n- `executed` - the Payment has been accepted by the Provider, but the settlement confirmation is still pending.\n- `failed` - the Payment failed on the Salt Edge side or got rejected by the Provider.\n"},"raw_provider_status":{"type":"string","description":"Status returned by the Provider"},"template_identifier":{"type":"string","description":"The `identifier` of the Payment template used for this Payment"},"payment_attributes":{"type":"object","description":"Filled Payment template attributes","properties":{"creditors_attributes":{"type":"array","description":"Array which contains values about creditor distinct for each payment from bulk","items":{"$ref":"#/components/schemas/BulkPaymentTemplateField"}},"shared_payment_attributes":{"type":"object","description":"Hash which contains common values for all payments from bulk"}}},"last_attempt":{"type":"object","description":"Information about the latest executed attempt is provided.","properties":{"id":{"type":"string","format":"integer","description":"The `id` of the created attempt"},"custom_fields":{"type":"object","description":"The custom fields sent during the attempt creation"}}},"created_at":{"type":"string","description":"The date and time in UTC when the Payment was created"},"updated_at":{"type":"string","description":"The date and time in UTC when the Payment was updated"}}},"BulkPaymentsResponse":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/BulkPayment"}}},"BulkPaymentResponse":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/BulkPayment"}}},"BulkPaymentCreateResponse":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"expires_at":{"type":"string","format":"date-time"},"bulk_payment_url":{"type":"string"},"customer_id":{"type":"string","format":"integer"},"bulk_payment_id":{"type":"string","format":"integer"}}}}},"PaymentTemplate":{"type":"object","description":"The payment template resource contains a set of required and optional fields that need to be filled in order to successfully execute a payment. Different payment templates serve different purposes.\n","properties":{"identifier":{"type":"string","description":"unique identifier of the payment template"},"description":{"type":"string","description":"additional information related to the template"},"payment_fields":{"type":"array","description":"list of optional and required fields for a payment","items":{"$ref":"#/components/schemas/PaymentTemplateField"}}}},"PaymentTemplateResponse":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PaymentTemplate"}}},"PaymentTemplatesResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PaymentTemplate"}}}},"PaymentTemplateField":{"type":"object","properties":{"name":{"type":"string","description":"the field’s name that should be used as a key in the credentials object"},"english_name":{"type":"string","description":"the field’s name in US English"},"localized_name":{"type":"string","description":"The field’s name in the provider's main language"},"nature":{"type":"string","enum":["text","password","select","file","number","dynamic_select"],"description":"Nature"},"position":{"type":"integer","description":"the field’s position in the public user interface"},"extra":{"$ref":"#/components/schemas/PaymentTemplateExtraField"},"optional":{"type":"boolean","description":"whether the input for this field is optional or not"}}},"PaymentTemplateExtraField":{"type":"object","description":"The following represents the object you get in the `extra` field of the payment field object.","properties":{"validation_regexp":{"type":"string","description":"the regexp used for the payment field validation"}}},"Payment":{"type":"object","description":"A payment represents the process of transferring funds through a specific [Provider](#ais-providers).\n","properties":{"id":{"type":"string","format":"integer","description":"The `id` of the created Payment"},"customer_id":{"type":"string","format":"integer","description":"The `id` of the Customer who initiated the Payment"},"provider_code":{"type":"string","description":"The code of the Provider through which the Payment was created and assigned by Salt Edge for a particular Provider, including the country code for easier differentiation. I.e.: all Spanish providers' codes end with `_es`\n"},"provider_name":{"type":"string","description":"The Provider’s `name` used to establish the Payment"},"refresh_interval":{"type":"integer","description":"Defines the interval, in seconds, after which a Payment should be refreshed. This parameter specifies the number of seconds between each refresh attempt to update or verify the payment status.\n"},"refresh_timeout":{"type":"integer","description":"Sets the timeout, in seconds, after which the Payment refresh attempts should stop. This parameter limits the total duration for which refresh attempts are made."},"status":{"type":"string","description":"The current status of the Payment. Possible values are:\n- `initiated` - a Payment request was initiated, and Salt Edge created the attempt. The User is ready to be redirected to the Widget for Consent or directly to the Provider.\n- `initiated_info_required` - a Payment request was initiated, and Salt Edge created the attempt. The user is ready to be redirected to the Widget to choose the Provider or provide additional information.\n- `authorizing` - the User completed all necessary steps in the Salt Edge Widget, and the request was sent to the Provider.\n- `authorized` - the User completed the authorization journey on the Provider’s side.\n- `settled` - the settlement process has been completed by the Provider and the funds have been successfully transferred to the creditor’s account.\n- `executed` - the Payment has been accepted by the Provider, but the settlement confirmation is still pending.\n- `failed` - the Payment failed on the Salt Edge side or got rejected by the Provider.\n"},"raw_provider_status":{"type":"string","description":"Status returned by the Provider"},"template_identifier":{"type":"string","description":"The `identifier` of the Payment template used for this Payment"},"payment_attributes":{"type":"object","description":"Filled Payment template fields"},"last_attempt":{"type":"object","description":"Information about the latest executed attempt is provided.","properties":{"id":{"type":"string","format":"integer","description":"The `id` of the created attempt"},"custom_fields":{"type":"object","description":"The custom fields sent during the attempt creation"}}},"created_at":{"type":"string","description":"The date and time in UTC when the Payment was created"},"updated_at":{"type":"string","description":"The date and time in UTC when the Payment was updated"}}},"CreatePaymentRequestBody":{"type":"object","required":["data"],"properties":{"data":{"type":"object","required":["payment_attributes","template_identifier"],"properties":{"payment_attributes":{"type":"object","description":"All the attributes (both required and optional) that are needed for a successful Payment Initiation for a specific `payment_template`"},"template_identifier":{"type":"string","description":"The Payment template identifier.\u003cbr /\u003e\nPossible values: all [supported payment templates](#supported-templates\")\n"},"customer_id":{"type":"string","format":"integer","description":"A unique `id` of the Customer to which the Payment belongs"},"customer_identifier":{"type":"string","description":"If `customer_id` is not sent and this field is sent, find or create such a Customer using this identifier."},"provider":{"type":"object","properties":{"code":{"type":"string","description":"The code of the required Provider"},"include_sandboxes":{"type":"boolean","default":true,"description":"Whether to display Sandboxes and Fake Providers in Provider search or not"}}},"return_error_class":{"type":"boolean","description":"Append `error_clas`s to `return_to` URL"},"return_payment_id":{"type":"boolean","description":"Append payment_id to return_to URL"},"widget":{"type":"object","properties":{"template":{"type":"string","description":"Allows Clients and Partners to configure a template for the Widget.\u003cbr /\u003e By default, Clients use `default_v3` and Partners use `partner_v3`."},"theme":{"type":"string","default":"default","description":"Allows Clients to specify a color theme for the Widget.\u003cbr /\u003e If not set, the Widget uses the User's operating system theme preference by default"},"javascript_callback_type":{"type":"string","description":"How the Widget interacts with the opener/ parent window"},"disable_provider_search":{"type":"boolean","description":"Enables Clients to disable Provider searches for Users"},"skip_provider_selection":{"type":"boolean","description":"Enables Users to skip the Provider selection page"},"show_consent_confirmation":{"type":"boolean","default":true,"description":"Shows confirmation of the Connection"},"popular_providers_country":{"type":"string","description":"Displays in the Widget the most popular Providers from a specified country.\u003cbr /\u003eIf nothing is sent, the most popular Providers are not shown"},"allowed_countries":{"type":"array","description":"Displays Providers only from specified countries","items":{"type":"string"}},"skip_final_screen":{"type":"boolean","description":"Allows Users to skip the error, success and confirmation screens"},"skip_processing_screen":{"type":"boolean","description":"Allows Users to skip the Payment processing screen after receiving the authorized status from the Provider"}}},"attempt":{"type":"object","properties":{"cancellation_scopes":{"type":"array","description":"Allows the Client to indicate the purpose a Provider doesn’t perform a Payment. \u003cbr /\u003e\nPossible values: `timeout`, `insufficient_funds`.\n","items":{"type":"string"}},"custom_fields":{"type":"object","description":"A JSON object which will be sent back on any of the Client’s callbacks"},"return_to":{"type":"string","description":"The URL to which the User will be redirected. By default, this is the Client’s or Partner’s home URL"},"locale":{"type":"string","description":"The language of the Widget and the language of the returned error message(s). \u003cbr /\u003e\nPossible values: any locale ISO 639-1 format\n"}}},"kyc":{"type":"object","description":"KYC data should be sent only by Partners for Customer Identification.","properties":{"type_of_account":{"type":"string","description":"The type of Account from which the Payment will be performed, only for KYC purposes"}}}}}}},"PaymentsResponse":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/Payment"}}},"PaymentResponse":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/Payment"}}},"UpdatePaymentRequestBody":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/Payment"}}},"PaymentCreateResponse":{"type":"object","required":["data"],"properties":{"data":{"type":"object","properties":{"expires_at":{"type":"string","format":"date-time"},"payment_url":{"type":"string"},"customer_id":{"type":"string","format":"integer"},"payment_id":{"type":"string","format":"integer"}}}}}}}}