Account management (1.0)

Download OpenAPI specification:Download

Accounts

Index accounts

Returns all accounts (both personal & business) managed under a partner.

Request
Security:
query Parameters
page[number]
string

Returns a specific page of results.

page[size];
string

Determines the size of each page of results.

filter[type]
string

Filters the returned accounts by type.

filter[iban]
string

Filters the returned accounts by IBAN.

filter[id]
string

Filters the returned accounts by ID

Responses
200

The operation was successful.

400

An error occurred on the client side.

500

Internal server error.

default

Unexpected error

get/v1/accounts
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/accounts?page%5Bnumber%5D=string&page%5Bsize%5D%3B=string&filter%5Btype%5D=string&filter%5Biban%5D=string&filter%5Bid%5D=string'
Response samples
application/json
[
  • {
    }
]

Get an account

Returns information about a specific account (personal or business).

Request
Security:
path Parameters
id
required
string
Responses
200

The operation was successful.

400

An error occurred on the client side.

404

The account could not be found.

500

Internal server error.

default

Unexpected error

get/v1/accounts/{id}
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/accounts/{id}'
Response samples
application/json
{
  • "id": "5526853938474f3e92b22a03ea57a544cacc",
  • "iban": "DE76110101001100000999",
  • "bic": "SOBKDEBBXXX",
  • "type": "CHECKING_PERSONAL",
  • "overdraft": {
    },
  • "balance": {
    },
  • "available_balance": {
    },
  • "locking_status": "NO_BLOCK",
  • "locking_reasons": [
    ],
  • "account_limit": {
    },
  • "person_id": "bb66a0161a0a4066abfe133412f6236dcper",
  • "business_id": "a9a25dc10aa74244bd0bb75d1ce6b3b5cbiz",
  • "partner_id": "55e47118b78741dbb81cdd3d372bc448cpar",
  • "opened_at": "2017-10-11T22:33:26Z",
  • "status": "ACTIVE",
  • "closed_at": "2022-01-01T12:11:16Z"
}

Get balance for an account

Returns the balance of an account in the form of two objects—balance and available_balance.

Request
Security:
path Parameters
account_id
required
string
Responses
200

The operation was successful.

400

An error occurred on the client side.

404

The account could not be found.

500

Internal server error.

get/v1/accounts/{account_id}/balance
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/accounts/{account_id}/balance'
Response samples
application/json
{
  • "available_balance": {
    },
  • "balance": {
    },
  • "seizure_protection": {
    }
}

Get average daily balance for an account

Fetches the average of daily end-of-day balance for the specified account and date range. A maximum of one year can be provided as date range. If the account has no balance for a given day because for example it was opened after the start_date OR closed before end_date, those days will have end-of-day balance as 0. If end_date is in the future, those days' balance is equal to the latest balance. It is recommended to present the average balance to the Customer as Yearly for past years and Year to Date for current year.

Request
Security:
path Parameters
account_id
required
string

Unique identifier to an account.

Example: e48c29b85992b8772eb7ddd518490920cacc
query Parameters
start_date
required
string <date> ([0-9]{4})-(?:[0-9]{2})-([0-9]{2})

Starting date (inclusive) for balance calculation

Example: start_date=2020-01-31
end_date
required
string <date> ([0-9]{4})-(?:[0-9]{2})-([0-9]{2})

End date (inclusive) for balance calculation

Example: end_date=2020-12-31
Responses
200

Average daily balance successfully calculated.

400

Request error due invalid parameters.

404

Specified account was not found

500

A server error was encountered during the request.

get/v1/accounts/{account_id}/average_daily_balance
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/accounts/{account_id}/average_daily_balance?start_date=2020-01-31&end_date=2020-12-31'
Response samples
application/json
{
  • "acccount_id": "e48c29b85992b8772eb7ddd518490920cacc",
  • "average_daily_balance": {
    }
}

Get account bookings

Returns an array containing all bookings for an account.

Request
Security:
path Parameters
account_id
required
string
query Parameters
page[number]
string

The number of results pages to return.

page[size]
string

The size of each page in the response.

sort
string

Sort the results by booking_date, valuta_date, recorded_at, or id.

Enum: "booking_date" "valuta_date" "recorded_at" "id"
filter[id]
string

ID of the booking.

filter[recorded_at][min]
string

Filter the results by the date and time when the booking was recorded starting from a certain date and time.

filter[recorded_at][max]
string

Filter the results by the date and time when the booking was recorded up until a certain date and time.

filter[valuta_date]
string

Filter the results by the valuta date.

filter[booking_type]
string

Filter the results by booking type.

filter[description]
string

Filter the results by booking description.

filter[receiver_iban_virtual]
string

Filter the results to show bookings received on virtual IBANs.

filter[transaction_id]
string

Filter the results by transaction ID.

Responses
200

The operation was successful.

400

An error occurred on the client side.

404

The account could not be found.

500

Internal server error.

get/v1/accounts/{account_id}/bookings
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/accounts/{account_id}/bookings?page%5Bnumber%5D=string&page%5Bsize%5D=string&sort=booking_date&filter%5Bid%5D=string&filter%5Brecorded_at%5D%5Bmin%5D=string&filter%5Brecorded_at%5D%5Bmax%5D=string&filter%5Bvaluta_date%5D=string&filter%5Bbooking_type%5D=string&filter%5Bdescription%5D=string&filter%5Breceiver_iban_virtual%5D=string&filter%5Btransaction_id%5D=string'
Response samples
application/json
{
  • "id": "fe6561bdb526ed8866e9dac00bd1848ecboo",
  • "creation_date": "2022-01-18",
  • "valuta_date": "2022-01-18",
  • "booking_date": "2022-01-18",
  • "booking_type": "SEPA_CREDIT_TRANSFER",
  • "amount": {
    },
  • "description": "BERLINER VOLKSBANK EG, TXL ABFLUG",
  • "purpose_code": "null",
  • "recipient_bic": "SOBKDEBBXXX",
  • "recipient_iban": "DE97110101002242911754",
  • "recipient_name": "SURIA LUIS VENTURA VIERA PEREIRA RIBEIRO",
  • "receiver_iban_virtual": "string",
  • "sender_bic": "SOBKDEBBXXX",
  • "sender_iban": "DE95110101000018501020",
  • "sender_name": "HANS MUSTERMANN",
  • "end_to_end_id": "END2ENDREJ",
  • "creditor_identifier": "DE98ZZZ09999999999",
  • "mandate_reference": "00000000000001",
  • "transaction_id": "d651ee23300b4e7c8fe7b7e2b2e96trx",
  • "return_transaction_id": "758ea4a268974284ae7af17871f3fdc4",
  • "sepa_charges": {
    },
  • "sepa_return_code": "AC01",
  • "sepa_return_reason": "string",
  • "sepa_return_reason_definition": "string",
  • "meta_info": "\"{\\\"cards\\\":{\\\"card_id\\\":\\\"642b84f1f1960a40a471425c98996941mcrd\\\",\\\"merchant\\\":{\\\"id\\\":\\\"123456789101112\\\",\\\"country_code\\\":\\\"DE\\\",\\\"category_code\\\":\\\"5411\\\",\\\"post_code\\\":\\\"\\\",\\\"state\\\":\\\"\\\",\\\"street_address\\\":\\\"\\\",\\\"name\\\":\\\"testwithMaria AG\\\",\\\"town\\\":\\\"Berlin\\\"},\\\"original_amount\\\":{\\\"fx_rate\\\":1,\\\"currency\\\":\\\"EUR\\\",\\\"value\\\":-1000},\\\"pos_entry_mode\\\":\\\"CONTACTLESS\\\",\\\"trace_id\\\":\\\"652bb834cd7a06b484e9731413cfc89d45100d8b\\\",\\\"transaction_date\\\":\\\"2022-01-20\\\",\\\"transaction_time\\\":\\\"2023-06-26T09:51:13.680259227Z\\\",\\\"transaction_type\\\":\\\"PURCHASE\\\",\\\"ancillary_fees\\\":\\\"[{\\\\\\\"name\\\\\\\":\\\\\\\"BUNDLED_SERVICE\\\\\\\",\\\\\\\"amount\\\\\\\":11111},{\\\\\\\"name\\\\\\\":\\\\\\\"BAGGAGE_FEE\\\\\\\",\\\\\\\"amount\\\\\\\":22222}]\\\",\\\"recorded_at\\\":\\\"2023-06-26T09:52:26Z\\\",\\\"reconciliation_id\\\":null,\\\"auth_code\\\":\\\"234567\\\",\\\"terminal_id\\\":\\\"12345678\\\",\\\"acquirer_id\\\":\\\"123456\\\",\\\"card_scheme\\\":\\\"VISA\\\",\\\"wallet_type\\\":\\\"APPLE\\\",\\\"device_pan\\\":\\\"\\\"}}\", ",
  • "recorded_at": "2022-01-24T00:41:57.634Z",
  • "reconciliation_id": "87271dda6e454393036b4ec2b64b2221itrx",
  • "initiator_reference": "string",
  • "charge_details": "CRED"
}

Person accounts

Index accounts for a person

Returns an array containing all accounts owned by the person specified in the request URL.

Request
Security:
path Parameters
person_id
required
string
query Parameters
page[number]
string

The number of results pages to return.

page[size]
string

The size of each results page to return.

filter[iban]
string

Filters the results by IBAN.

Responses
200

The operation was successful.

400

An error occurred on the client side.

404

The resource could not be found.

500

Internal server error.

default

Unexpected error

get/v1/persons/{person_id}/accounts
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/persons/{person_id}/accounts?page%5Bnumber%5D=string&page%5Bsize%5D=string&filter%5Biban%5D=string'
Response samples
application/json
[
  • {
    }
]

Get a single personal account

Returns information about a single personal banking account.

Request
Security:
path Parameters
person_id
required
string
account_id
required
string
Responses
200

The operation was successful.

400

An error occurred on the client side.

404

The account could not be found.

500

Internal server error.

get/v1/persons/{person_id}/accounts/{account_id}
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/persons/{person_id}/accounts/{account_id}'
Response samples
application/json
{
  • "id": "5526853938474f3e92b22a03ea57a544cacc",
  • "iban": "DE76110101001100000999",
  • "bic": "SOBKDEBBXXX",
  • "type": "CHECKING_PERSONAL",
  • "overdraft": {
    },
  • "balance": {
    },
  • "available_balance": {
    },
  • "locking_status": "NO_BLOCK",
  • "locking_reasons": [
    ],
  • "account_limit": {
    },
  • "person_id": "bb66a0161a0a4066abfe133412f6236dcper",
  • "business_id": "a9a25dc10aa74244bd0bb75d1ce6b3b5cbiz",
  • "partner_id": "55e47118b78741dbb81cdd3d372bc448cpar",
  • "opened_at": "2017-10-11T22:33:26Z",
  • "status": "ACTIVE",
  • "closed_at": "2022-01-01T12:11:16Z"
}

Update a personal account

Updates the personal account specified in the request URL.

Request
Security:
path Parameters
person_id
required
string
account_id
required
string
Request Body schema: application/json
block_reasons
required
Array of strings

The reason the customer wants to block/unblock their account.

Items Enum: "CUSTOMER_WISH" "COMPLIANCE_PARTNER"
acccount_id
string

The account ID.

person_id
required
string

The customer's unique person ID.

comment
string

Additional information about the request.

Responses
204

Successfully updated the person's account.

400

An error occurred on the client side.

404

The resource could not be found.

500

Internal server error.

patch/v1/persons/{person_id}/accounts/{account_id}
Request samples
application/json
{
  • "block_reasons": [
    ],
  • "acccount_id": "adc123a45d6d7cf8fbfeed537ba919d5cacc",
  • "person_id": "dc1a6812a14f6cc338cd084208535bcdcper",
  • "comment": "string"
}
Response samples
application/json
{
  • "errors": [
    ]
}

Business accounts

Index accounts for a business

Returns an array containing all accounts owned by the business specified in the request URL.

Request
Security:
path Parameters
business_id
required
string
query Parameters
page[number]
string

The number of results pages to return.

page[size]
string

The size of each results page.

filter[iban]
string

Filter on Iban

Responses
200

The operation was successful.

400

An error occurred on the client side.

404

The resource could not be found.

500

Internal server error.

default

Unexpected error

get/v1/businesses/{business_id}/accounts
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/businesses/{business_id}/accounts?page%5Bnumber%5D=string&page%5Bsize%5D=string&filter%5Biban%5D=string'
Response samples
application/json
[
  • {
    }
]

Retrieve a business account

Returns the business account specified in the request URL.

Request
Security:
path Parameters
business_id
required
string
id
required
string
Responses
200

The operation was successful.

400

An error occurred on the client side.

404

The account could not be found.

500

Internal server error.

default

Unexpected error

get/v1/businesses/{business_id}/accounts/{id}
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/businesses/{business_id}/accounts/{id}'
Response samples
application/json
{
  • "id": "5526853938474f3e92b22a03ea57a544cacc",
  • "iban": "DE76110101001100000999",
  • "bic": "SOBKDEBBXXX",
  • "type": "CHECKING_PERSONAL",
  • "purpose": "string",
  • "currency": "EUR",
  • "balance": {
    },
  • "available_balance": {
    },
  • "opened_at": "2017-10-11T22:33:26Z",
  • "locking_status": "NO_BLOCK",
  • "locking_reasons": [
    ],
  • "account_limit": {
    },
  • "person_id": "bb66a0161a0a4066abfe133412f6236dcper",
  • "business_id": "a9a25dc10aa74244bd0bb75d1ce6b3b5cbiz",
  • "status": "string",
  • "closure_reason": "COMPLIANCE_IMMEDIATE_INTERNAL",
  • "overdraft": {
    },
  • "closed_at": "2022-01-01T12:11:16Z"
}

Reference accounts

Index reference accounts for a business

Returns an array containing all reference accounts associated with the business account specified in the request URL.

Request
Security:
path Parameters
business_id
required
string
account_id
required
string
query Parameters
page[number]
integer

The number of results pages to return.

page[size]
integer

The number of results to return in each page.

filter[iban]
string

Filter the results by IBAN.

filter[status]
string

Filter the results by account status.

Enum: "ACTIVE" "INACTIVE"
Responses
200

The operation was successful.

400

Invalid request.

403

You are not authorized to perform this action.

404

The requested resource could not be found.

500

Internal server error.

get/v1/businesses/{business_id}/accounts/{account_id}/reference_accounts
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/businesses/{business_id}/accounts/{account_id}/reference_accounts?page%5Bnumber%5D=0&page%5Bsize%5D=0&filter%5Biban%5D=string&filter%5Bstatus%5D=ACTIVE'
Response samples
application/json
[
  • {
    }
]

Create a reference account for a business

Adds an external bank account as a reference account to the business' Solaris account specified in the request URL.
Note: Before calling this endpoint, you must create a SEPA Direct Debit mandate and have the customer sign it.

Request
Security:
path Parameters
business_id
required
string
account_id
required
string
Request Body schema: application/json

The content of the request.

name
string

The name of the external account holder.

iban
string

IBAN of the reference account.

mandate_number
string

The identifier of the SDD mandate that the customer signed.

mandate_signature_date
string <date>

The date when the customer signed the SDD mandate.

mandate_type
string

The type of SDD mandate.

Enum: "B2B" "Core"
Responses
201

The operation was successful.

400

Invalid request.

403

You are not authorized to perform this action.

404

The requested resource could not be found.

500

Internal server error.

post/v1/businesses/{business_id}/accounts/{account_id}/reference_accounts
Request samples
application/json
{
  • "name": "account_holder_unique_ref",
  • "iban": "DE32110101001000000029",
  • "mandate_number": "example-mandate-number",
  • "mandate_signature_date": "2020-01-08",
  • "mandate_type": "Core"
}
Response samples
application/json
{
  • "id": "ee4cc80bee604de09d036d8b7a9b6cb0",
  • "status": "ACTIVE",
  • "name": "Max Mustermann",
  • "iban": "DE32110101001000000029",
  • "mandate_number": "example-mandate-number",
  • "mandate_signature_date": "2020-01-08",
  • "mandate_type": "Core"
}

Create reference account for a person

Adds an external bank account as a reference account to the person's Solaris account specified in the request URL.
Note: Before calling this endpoint, you must create a SEPA Direct Debit mandate for your customer and have them sign it.

Request
Security:
path Parameters
person_id
required
string
account_id
required
string
Request Body schema: application/json

The content of the request.

name
string

The name of the external account holder.

iban
string

IBAN of the reference account.

mandate_number
string

The identifier of the SDD mandate that the customer signed.

mandate_signature_date
string <date>

The date when the customer signed the SDD mandate.

Responses
201

The operation was successful.

400

Invalid request.

403

You are not authorized to perform this action.

404

The requested resource could not be found.

500

Internal server error.

post/v1/persons/{person_id}/accounts/{account_id}/reference_accounts
Request samples
application/json
{
  • "name": "account_holder_unique_ref",
  • "iban": "DE32110101001000000029",
  • "mandate_number": "example-mandate-number",
  • "mandate_signature_date": "2020-01-08"
}
Response samples
application/json
{
  • "id": "ee4cc80bee604de09d036d8b7a9b6cb0",
  • "status": "ACTIVE",
  • "name": "Max Mustermann",
  • "iban": "DE32110101001000000029",
  • "mandate_number": "example-mandate-number",
  • "mandate_signature_date": "2020-01-08"
}

Index reference accounts for a person

Returns an array containing all reference accounts associated with the person's Solaris account specified in the request URL.

Request
Security:
path Parameters
person_id
required
string
account_id
required
string
query Parameters
page[number]
integer

The number of results pages to return.

page[size]
integer

The number of results to return in each page.

filter[iban]
string

Filter the results by IBAN.

filter[status]
string

Filter the results by account status.

Enum: "ACTIVE" "INACTIVE"
Responses
200

The operation was successful.

400

Invalid request.

403

You are not authorized to perform this action.

404

The requested resource could not be found.

500

Internal server error.

get/v1/persons/{person_id}/accounts/{account_id}/reference_accounts
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/persons/{person_id}/accounts/{account_id}/reference_accounts?page%5Bnumber%5D=0&page%5Bsize%5D=0&filter%5Biban%5D=string&filter%5Bstatus%5D=ACTIVE'
Response samples
application/json
[
  • {
    }
]

Index rejected incoming transactions

Returns an array containing all incoming transactions to the account specified in the request URL that Solaris rejected/returned.

Request
Security:
path Parameters
account_id
required
string
query Parameters
page[number]
integer >= 1
Default: 1

The number of results pages to return.

page[size]
integer
Default: 10

The size of each page of results.

Responses
200

The operation was successful.

400

An error occurred on the client side.

403

You are not authorized to perform this action.

404

The account could not be found.

500

Internal server error.

get/v1/accounts/{account_id}/rejected_incoming_transactions
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/accounts/{account_id}/rejected_incoming_transactions?page%5Bnumber%5D=1&page%5Bsize%5D=10'
Response samples
application/json
[
  • {
    }
]

Account closure requests

Initiate account closure request

Creates an account closure request for the specified account. See the account closure guide for more information about this process and the associated stages.

Request
Security:
Request Body schema: application/json
account_id
required
string

ID of the account to be closed.

closure_reason
required
string

The reason for the account closure.

Enum: "ACCOUNT_REVOCATION" "CUSTOMER_WISH" "PARTNER_SERVICE_ACCOUNT_TERMINATED" "RELATIONSHIP_TERMINATION" "COMPLIANCE_IMMEDIATE_PARTNER"
Responses
200

The operation was successful (idempotency).

201

The account closure request was successfully initiated.

400

An error occurred on the client side.

500

Internal server error.

post/v1/account_closure_requests
Request samples
application/json
{
  • "account_id": "5526853938474f3e92b22a03ea57a544cacc",
  • "closure_reason": "CUSTOMER_WISH"
}
Response samples
application/json
{
  • "id": "f8d7fbbd587047a0aa449ce69d2d6c08acrq",
  • "closure_reason": "COMPLIANCE_IMMEDIATE_INTERNAL",
  • "status": "IN_PROGRESS",
  • "account_id": "5526853938474f3e92b22a03ea57a544cacc",
  • "technical_closure_date": "2021-10-11",
  • "legal_closure_date": "2021-10-11",
  • "failure_reason": {
    },
  • "payout_allowed": "false",
  • "updated_at": "2021-12-22T15:05:33.634Z"
}

List all account closure requests

Returns an array containing all account closure requests.

Request
Security:
query Parameters
filter[account_id]
string

Filter the response by account ID.

filter[status]
string (status_enum)

Filter the response by the status of the ACR.

Enum: "INITIATED" "CONFIRMED" "IN_PROGRESS" "COMPLETED" "FAILED" "REVOKED"
Example: filter[status]=IN_PROGRESS
filter[legal_closure_date][min]
string

Filter the response by legal closure date (min border).

filter[legal_closure_date][max]
string

Filter the response by legal closure date (max border).

sort
string

Sort the returned ACRs by legal_closure_date or created_at.

page[size]
integer [ 1 .. 1000 ]
Default: 10

Determines the size of each page of results.

page[number]
integer >= 1
Default: 1

The number of results pages to return.

Responses
200

The operation was successful.

400

An error occurred on the client side.

500

Internal server error.

get/v1/account_closure_requests
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/account_closure_requests?filter%5Baccount_id%5D=string&filter%5Bstatus%5D=IN_PROGRESS&filter%5Blegal_closure_date%5D%5Bmin%5D=string&filter%5Blegal_closure_date%5D%5Bmax%5D=string&sort=string&page%5Bsize%5D=10&page%5Bnumber%5D=1'
Response samples
application/json
[
  • {
    }
]

Get a single account closure request

Retrieves information about a specific account closure request, specified in the request URL.

Request
Security:
path Parameters
id
required
string

ID of the account closure request to query.

Responses
200

The operation was successful.

400

An error occurred on the client side.

404

The account closure request could not be found.

500

Internal server error.

get/v1/account_closure_requests/{id}
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/account_closure_requests/{id}'
Response samples
application/json
{
  • "id": "f8d7fbbd587047a0aa449ce69d2d6c08acrq",
  • "closure_reason": "COMPLIANCE_IMMEDIATE_INTERNAL",
  • "status": "IN_PROGRESS",
  • "account_id": "5526853938474f3e92b22a03ea57a544cacc",
  • "technical_closure_date": "2021-10-11",
  • "legal_closure_date": "2021-10-11",
  • "failure_reason": {
    },
  • "payout_allowed": "false",
  • "updated_at": "2021-12-22T15:05:33.634Z"
}

Fee collection

When you create a fee transaction, the booking_type of the resulting booking on the account will match the type of the fee transaction.

The table below outlines all the possible fee types and their definitions.

Fee Type (Booking type) Definition
ChargeATM Fee charged for withdrawing cash from a domestic ATM (in EUR).
ChargeATMForeignCurrency Fee charged for withdrawing cash in non-EUR currency abroad.
CashDepositRetail Fee charged when a cash deposit through ViaCash is made.
CashWithdrawalRetail Fee charged when a cash withdrawal through ViaCash is made.
ChargeCardDelivery Fee charged for the delivery of a newly issued card.
ChargeCard Fee charged for issuing a card.
ChargeVirtualCard Fee charged for issuing a virtual card.
ChargeReissuePhysicalCard Fee for re-issuing a physical card.
ChargeAdditionalPhysicalCard Fee charged for issuing an additional physical card.
ChargeAdditionalVirtualCard Fee charged for issuing an additional virtual card.
ChargeReissueVirtualCard Fee charged for re-issuing a virtual card.
ChargeCardMaintenance Fee charged for the maintenance of a card.
BoosterPackage Fee charged only by Vivid for their "booster package".
ChargeAccountMaintenance Fee charged for account maintenance.
ChargeTopUpCard Fee charged for transactions resulting from successful Instant Card Top Ups.
ChargeAdditionalAccountMaintenance Fee charged for the maintenance of additional accounts.
ChargeSharedAccount Fee charged per shared account.
ChargeAuthorizedUser Fee charged for adding an authorized person.
ChargeGamblingTransactionPartner Fee charged for card transactions to Gambling merchants.
ChargeSEPAInstantOutgoing Fee charged for outgoing SEPA Instant transactions.
ChargeSEPAInstantIncoming Fee charged for incoming SEPA Instant transactions.
ChargeManualSepaTransferPartner Fee charged for SEPA transfer manually requested.
ChargeIncomingSwift Fee charged for incoming SWIFT transfers.
ChargeGamblingOrCashEquivalent Fee charged for gambling card transaction or cash equivalent.
ChargeFXCardTransaction Fee charged for card transactions in a foreign currency.

Create a fee collection transaction

Creates a fee transaction on the account specified in the URL. Solaris will debit the amount from the customer's account and transfer the funds to a Solaris settlement account. Each month, Solaris will pay out the amounts collected from fee transactions to your partner account.

Request
Security:
path Parameters
account_id
required
string
Request Body schema: application/json

The content of the request.

type
required
string

The type of fee. Note that you may only collect the types of fees that have been enabled for you.

Enum: "ChargeATM" "ChargeATMForeignCurrency" "CashDepositRetail" "CashWithdrawalRetail" "ChargeCardDelivery" "ChargeCard" "ChargeVirtualCard" "ChargeReissuePhysicalCard" "ChargeAdditionalPhysicalCard" "ChargeAdditionalVirtualCard" "ChargeReissueVirtualCard" "ChargeCardMaintenance" "BoosterPackage" "ChargeAccountMaintenance" "ChargeTopUpCard" "ChargeAdditionalAccountMaintenance" "ChargeSharedAccount" "ChargeAuthorizedUser" "ChargeGamblingTransactionPartner" "ChargeSEPAInstantOutgoing" "ChargeSEPAInstantIncoming" "ChargeManualSepaTransferPartner" "ChargeIncomingSwift" "ChargeGamblingOrCashEquivalent" "ChargeFXCardTransaction"
required
object

The amount of the fee transaction.

original_transaction_id
string

Optional ID to be provided for fee types that relate to or are charged for individual transactions. In this case, you would provide the ID of the booking linked to the transaction.

initiator_reference
string

Optional reference for the fee transaction to be populated by you.

idempotency_key
string

Optional idempotency key to be used when creating the fee transaction.

Responses
201

The operation was successful.

400

There was an error on the client side.

403

You are not authorized to perform this action.

404

The model could not be found.

500

Internal server error.

default

Unexpected error

post/v1/accounts/{account_id}/transactions/fees
Request samples
application/json
{
  • "type": "ChargeAccountMaintenance",
  • "amount": {
    },
  • "initiator_reference": "2022_08_acc_maint",
  • "idempotency_key": "653e91ae-7e93-4106-a33c-00607dae851e"
}
Response samples
application/json
{
  • "type": "ChargeAccountMaintenance",
  • "amount": {
    },
  • "reconciliation_id": "938cfdf93ef54bdcbd4e955584da3bf0fct",
  • "initiator_reference": "2022_08_acct_maint",
  • "original_transaction_id": "6d4659e500ef4b10aa48d6b08d0d3e7b",
  • "solaris_initiated": false
}

List fee transactions for an account

Returns an array containing all fee transactions created for the account specified in the request URL.

Request
Security:
path Parameters
account_id
required
string
query Parameters
page[number]
integer

The number of results pages to return.

page[size]
string

The size of each page in the response.

filter[type]
string

Filter the results by the type of fee collected.

filter[reconciliation_id]
string

Filter the results by a transactions reconciliation ID. (Effectively allows you to look up the transaction of one fee booking.)

filter[solaris_initiated]
boolean

Filter the results to indicate whether Solaris initiated the fee transaction.

Responses
200

The operation was successful.

400

There was an error on the client side.

403

You are not authorized to perform this action.

404

The model could not be found.

500

Internal server error.

default

Unexpected error

get/v1/accounts/{account_id}/transactions/fees
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/accounts/{account_id}/transactions/fees?page%5Bnumber%5D=0&page%5Bsize%5D=string&filter%5Btype%5D=string&filter%5Breconciliation_id%5D=string&filter%5Bsolaris_initiated%5D=true'
Response samples
application/json
[
  • {
    }
]

Reservations

Index reservations on an account. Version 2022-07-18

Returns an array containing all outstanding reservations on the account specified in the request URL. The API will not return reservations that have been applied or revoked.
Important This endpoint replaces the old version. However, please note that you have to set the api-version header to the version you want (e.g., 2022-07-18). If you do not specify a version, then the API will return the older version of the response.

Request
Security:
path Parameters
account_id
required
string

Unique identifier of a customer's account.

Example: e48c29b85992b8772eb7ddd518490920cacc
query Parameters
page[number]
string

Returns a specific page of results.

page[size]
string

Determines the size of each page of results.

filter[type]
string (reservation_types)

Filters the returned reservations by type.

Enum: "CardAuthorization" "SepaCreditTransfer" "ClearingTransaction" "IntraCustomerTransfer" "SepaCreditBatch" "Seizure" "SecuritiesPurchase" "PendingTrade" "SEPAInstantCreditTransfer"
Example: filter[type]=CardAuthorization
filter[id]
string

Filters the returned reservations by ID.

Example: filter[id]=162ddd7e-790c-5963-908f-4cedfd30f9a1
filter[status]
string

Filters the reservations by status, e.g., OPEN.

Enum: "OPEN" "RESOLVED"
Example: filter[status]=OPEN
sort
string

Sorts the returned reservations by created_at date.

Enum: "created_at" "-created_at"
Example: sort=-created_at
Responses
200

Successfully fetched the reservations.

400

Invalid parameters provided.

404

The account could not be found.

get/v1/accounts/{account_id}/reservations
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/accounts/{account_id}/reservations?page%5Bnumber%5D=string&page%5Bsize%5D=string&filter%5Btype%5D=CardAuthorization&filter%5Bid%5D=string&filter%5Bstatus%5D=OPEN&sort=created_at'
Response samples
application/json
[
  • {
    }
]

(Deprecated) Get account reservations. Version 2022-06-01Deprecated

Returns an array containing all reservations on a given account. This endpoint will deprecated soon. All partners must switch to the new version.

Request
Security:
path Parameters
account_id
required
string
query Parameters
page[number]
string

Returns a specific page of results.

page[size];
string

Determines the size of each page of results.

filter[reservation_type]
string

Filters the returned reservations by type.

Enum: "CARD_AUTHORIZATION" "SEPA_CREDIT_TRANSFER" "CLEARING_TRANSACTION" "INTRA_CUSTOMER_TRANSFER" "SEPA_CREDIT_BATCH" "SEIZURE" "SEPAInstantCreditTransfer"
Example: filter[reservation_type]=CARD_AUTHORIZATION
filter[id]
string

Filters the returned reservations by ID.

Example: filter[id]=162ddd7e-790c-5963-908f-4cedfd30f9a1
filter[status]
string

Filters the reservations by status, e.g., OPEN.

Enum: "OPEN" "RESOLVED"
Example: filter[status]=OPEN
sort
string

Sorts the returned reservations by created_at date.

Enum: "created_at" "-created_at"
Example: sort=-created_at
Responses
200

The operation was successful.

400

An error occurred on the client side.

404

The account could not be found.

500

Internal server error.

get/v1/accounts/{account_id}/reservations/old
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/accounts/{account_id}/reservations/old?page%5Bnumber%5D=string&page%5Bsize%5D%3B=string&filter%5Breservation_type%5D=CARD_AUTHORIZATION&filter%5Bid%5D=string&filter%5Bstatus%5D=OPEN&sort=created_at'
Response samples
application/json
[
  • {
    }
]

Seizures

Index seizures for a person

Returns an array containing all seizures for the person specified in the request URL. Note that the amount of a seizure always reflects the total amount of the seizure, even if part of it has been paid. It does not reflect the outstanding amount of the seizure.

Request
Security:
path Parameters
person_id
required
string
query Parameters
page[number]
string

The number of results pages to return.

page[size]
string

The size of each page in the response.

sort
string

Sort the results by the date when the seizure was created.

Value: "created_at"
filter[status]
string

Filter the results by seizure status.

Responses
200

Successful result of the operation

400

Invalid request.

403

You are not authorized to perform this action.

404

The resource could not be found.

500

Internal server error.

default

Unexpected error

get/v1/persons/{person_id}/seizures
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/persons/{person_id}/seizures?page%5Bnumber%5D=string&page%5Bsize%5D=string&sort=created_at&filter%5Bstatus%5D=string'
Response samples
application/json
[
  • {
    }
]

Index seizures for a business

Returns an array containing all active seizures related to the given business. Note that the amount of a seizure always reflects the total amount of the seizure, even if part of it has been paid. It does not reflect the outstanding amount of the seizure.

Request
Security:
path Parameters
business_id
required
string
query Parameters
page[number]
string

The number of results pages to return.

page[size]
string

The size of each page in the response.

sort
string
filter[status]
string

Filter the results by seizure status.

Responses
200

Successful result of the operation

400

Invalid request.

403

You are not authorized to perform this action.

404

The resource could not be found.

500

Internal server error.

default

Unexpected error

get/v1/businesses/{business_id}/seizures
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/businesses/{business_id}/seizures?page%5Bnumber%5D=string&page%5Bsize%5D=string&sort=string&filter%5Bstatus%5D=string'
Response samples
application/json
[
  • {
    }
]

Bank statements

Create a bank statement for an account

Generates a bank statement for the account specified in the request URL. You must provide a start_date and an end_date. The API will return all bookings with a valuta_date that falls on and between these two dates. You may set the start_date to a date before the account was opened, but do not provide this option to your customers in your frontend.
Note: This request is idempotent. If you attempt multiple requests with the same start_date and end_date, then the API will return a 200 response with the data produced by the original request.

Request
Security:
path Parameters
account_id
required
string
Request Body schema: application/json

The content of the request.

start_date
required
string <date>

The starting date from which to return bookings for the account.

end_date
required
string <date>

The ending date for the bank statement. Must be a later date than the start_date.

Responses
200

The statement has already been created for the given dates.

201

The operation was successful.

400

An error occurred on the client side.

403

You are not authorized to perform this action.

404

The resource could not be found.

500

Internal server error.

post/v1/accounts/{account_id}/bank_statements
Request samples
application/json
{
  • "start_date": "2016-05-24",
  • "end_date": "2016-05-31"
}
Response samples
application/json
{
  • "id": "4463f72f46cc9233c5494146f01b152ccsas",
  • "recipient_information": {
    },
  • "issue_date": "2022-04-01",
  • "statement_period_start_date": "2022-03-01",
  • "statement_period_end_date": "2022-03-31",
  • "overdraft_facility": {
    },
  • "account_information": {
    },
  • "disclaimer": "Sehr geehrte Kundin, sehr geehrter Kunde,\\nbitte prüfen Sie die Buchungen, Berechnungen und den Abschlusssaldo im beiliegenden Kontoauszug, der zugleich einen Rechnungsabschluss darstellt. Rechnungsabschlüsse gelten als genehmigt, sofern Sie innerhalb von sechs Wochen nach Zugang keine Einwendungen erheben. Einwendungen gegen Rechnungsabschlüsse müssen der solarisBank schriftlich oder in Textform (z.B. an support@solarisbank.de) zugehen. Im Falle der Einwendung in Textform genügt zur Fristwahrung die rechtzeitige Absendung. Der angegebene Kontostand berücksichtigt nicht die Wertstellung der einzelnen Buchungen. Dies bedeutet, dass der genannte Betrag nicht dem für die Zinsrechnung maßgeblichen Kontostand entsprechen muss und bei Verfügungen möglicherweise Zinsen für die Inanspruchnahme einer eingeräumten oder geduldeten Kontoüberziehung anfallen können. Gutschriften aus eingereichten Lastschriften und anderen Einzugspapieren erfolgen unter dem Vorbehalt der Einlösung. Guthaben sind als Einlagen nach Maßgabe des Einlagensicherungsgesetzes entschädigungsfähig. Nähere Informationen können dem Informationsbogen für den Einleger entnommen werden, den Sie gemeinsam mit unseren für den Geschäftsverkehr mit Ihnen geltenden Allgemeinen Geschäftsbedingungen und besonderen Bedingungen unter www.solarisbank.de/partner einsehen können.\\nMit freundlichen Grüßen\\nIhre solarisBank"
}

Index bookings for a bank statement

Returns an array containing all bookings that are contained within the account statement specified in the request URL.

Request
Security:
path Parameters
account_id
required
string
statement_id
required
string
query Parameters
page[number]
string

Returns a specific page of results.

page[size];
string

Determines the size of each page of results.

Responses
200

The operation was successful.

400

An error occurred on the client side.

403

You are not authorized to perform this action.

404

The resource could not be found.

500

Internal server error.

get/v1/accounts/{account_id}/bank_statements/{statement_id}/bookings
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/accounts/{account_id}/bank_statements/{statement_id}/bookings?page%5Bnumber%5D=string&page%5Bsize%5D%3B=string'
Response samples
application/json
{
  • "id": "fe6561bdb526ed8866e9dac00bd1848ecboo",
  • "creation_date": "2022-01-18",
  • "valuta_date": "2022-01-18",
  • "booking_date": "2022-01-18",
  • "booking_type": "SEPA_CREDIT_TRANSFER",
  • "amount": {
    },
  • "description": "BERLINER VOLKSBANK EG, TXL ABFLUG",
  • "purpose_code": "null",
  • "recipient_bic": "SOBKDEBBXXX",
  • "recipient_iban": "DE97110101002242911754",
  • "recipient_name": "SURIA LUIS VENTURA VIERA PEREIRA RIBEIRO",
  • "receiver_iban_virtual": "string",
  • "sender_bic": "SOBKDEBBXXX",
  • "sender_iban": "DE95110101000018501020",
  • "sender_name": "HANS MUSTERMANN",
  • "end_to_end_id": "END2ENDREJ",
  • "creditor_identifier": "DE98ZZZ09999999999",
  • "mandate_reference": "00000000000001",
  • "transaction_id": "d651ee23300b4e7c8fe7b7e2b2e96trx",
  • "return_transaction_id": "758ea4a268974284ae7af17871f3fdc4",
  • "sepa_charges": {
    },
  • "sepa_return_code": "AC01",
  • "sepa_return_reason": "string",
  • "sepa_return_reason_definition": "string",
  • "meta_info": "\"{\\\"cards\\\":{\\\"card_id\\\":\\\"642b84f1f1960a40a471425c98996941mcrd\\\",\\\"merchant\\\":{\\\"id\\\":\\\"123456789101112\\\",\\\"country_code\\\":\\\"DE\\\",\\\"category_code\\\":\\\"5411\\\",\\\"post_code\\\":\\\"\\\",\\\"state\\\":\\\"\\\",\\\"street_address\\\":\\\"\\\",\\\"name\\\":\\\"testwithMaria AG\\\",\\\"town\\\":\\\"Berlin\\\"},\\\"original_amount\\\":{\\\"fx_rate\\\":1,\\\"currency\\\":\\\"EUR\\\",\\\"value\\\":-1000},\\\"pos_entry_mode\\\":\\\"CONTACTLESS\\\",\\\"trace_id\\\":\\\"652bb834cd7a06b484e9731413cfc89d45100d8b\\\",\\\"transaction_date\\\":\\\"2022-01-20\\\",\\\"transaction_time\\\":\\\"2023-06-26T09:51:13.680259227Z\\\",\\\"transaction_type\\\":\\\"PURCHASE\\\",\\\"ancillary_fees\\\":\\\"[{\\\\\\\"name\\\\\\\":\\\\\\\"BUNDLED_SERVICE\\\\\\\",\\\\\\\"amount\\\\\\\":11111},{\\\\\\\"name\\\\\\\":\\\\\\\"BAGGAGE_FEE\\\\\\\",\\\\\\\"amount\\\\\\\":22222}]\\\",\\\"recorded_at\\\":\\\"2023-06-26T09:52:26Z\\\",\\\"reconciliation_id\\\":null,\\\"auth_code\\\":\\\"234567\\\",\\\"terminal_id\\\":\\\"12345678\\\",\\\"acquirer_id\\\":\\\"123456\\\",\\\"card_scheme\\\":\\\"VISA\\\",\\\"wallet_type\\\":\\\"APPLE\\\",\\\"device_pan\\\":\\\"\\\"}}\", ",
  • "recorded_at": "2022-01-24T00:41:57.634Z",
  • "reconciliation_id": "87271dda6e454393036b4ec2b64b2221itrx",
  • "initiator_reference": "string",
  • "charge_details": "CRED"
}

Statements of account

Create a statement of account

Creates a statement of account (Rechnungsabschluss) for the account specified in the request URL. Use the information returned in the response to generate your own branded PDF file to present to the customer. This file must include the entire data set returned by our API without exception, including the mandatory disclaimer text.
In the request, you must specify a year along with an interval and a period. Together, the interval and period determine the statement's beginning and end dates (statement_period_start_date and statement_period_end_date). For example, if you make a request with an interval of MONTHLY, a period of 3, and a year of 2022, then the API will return a statement of account for the month of March 2022. If the API returns an error related to the start and end dates, then the interval and period could not be translated into dates (e.g., an invalid enum was passed) or the given interval fell outside of the allowed time frame (e.g., in the future).

Request
Security:
path Parameters
account_id
required
string
Request Body schema: application/json

The content of the request.

interval
required
string

Determines the amount of time that the statement of account should cover.

Enum: "MONTHLY" "QUARTERLY" "EVERY_SIX_MONTHS" "ANNUALLY"
period
required
integer

Determines the starting period in the year from which to return bookings.

Enum: 1 2 3 4 5 6 7 8 9 10 11 12
year
required
integer

The year for which to create the statement of account.

Responses
200

A statement for account has already been created based on the provided values.

201

The operation was successful.

400

An error occurred on the client side.

403

You are not authorized to perform this action.

404

The resource could not be found.

500

Internal server error.

post/v1/accounts/{account_id}/statement_of_accounts
Request samples
application/json
{
  • "interval": "MONTHLY",
  • "period": 3,
  • "year": 2022
}
Response samples
application/json
{
  • "id": "e349cdc6b712035236bed32d7399ab72csoa",
  • "year": 2022,
  • "interval": "MONTHLY",
  • "period": 3,
  • "statement_number": "2022-M-03",
  • "recipient_information": {
    },
  • "issue_date": "2022-04-01",
  • "statement_period_start_date": "2022-03-01",
  • "statement_period_end_date": "2022-03-31",
  • "overdraft_facility": {
    },
  • "interest_accrual_rate": 12.5,
  • "overdraft_rate": 9,
  • "interest_accrued": {
    },
  • "account_information": {
    },
  • "disclaimer": "Sehr geehrte Kundin, sehr geehrter Kunde,\\nbitte prüfen Sie die Buchungen, Berechnungen und den Abschlusssaldo im beiliegenden Kontoauszug, der zugleich einen Rechnungsabschluss darstellt. Rechnungsabschlüsse gelten als genehmigt, sofern Sie innerhalb von sechs Wochen nach Zugang keine Einwendungen erheben. Einwendungen gegen Rechnungsabschlüsse müssen der solarisBank schriftlich oder in Textform (z.B. an support@solarisgroup.com) zugehen. Im Falle der Einwendung in Textform genügt zur Fristwahrung die rechtzeitige Absendung. Der angegebene Kontostand berücksichtigt nicht die Wertstellung der einzelnen Buchungen. Dies bedeutet, dass der genannte Betrag nicht dem für die Zinsrechnung maßgeblichen Kontostand entsprechen muss und bei Verfügungen möglicherweise Zinsen für die Inanspruchnahme einer eingeräumten oder geduldeten Kontoüberziehung anfallen können. Gutschriften aus eingereichten Lastschriften und anderen Einzugspapieren erfolgen unter dem Vorbehalt der Einlösung. Guthaben sind als Einlagen nach Maßgabe des Einlagensicherungsgesetzes entschädigungsfähig. Nähere Informationen können dem Informationsbogen für den Einleger entnommen werden, den Sie gemeinsam mit unseren für den Geschäftsverkehr mit Ihnen geltenden Allgemeinen Geschäftsbedingungen und besonderen Bedingungen unter www.solarisbank.de/partner einsehen können.\\nMit freundlichen Grüßen\\nIhre solarisBank"
}

Index bookings within a statement of account

Returns an array of all bookings with a valuta_date that falls between the start and end dates of the account statement specified in the request URL.

Request
Security:
path Parameters
account_id
required
string
statement_id
required
string
query Parameters
page[number]
string

Returns a specific page of results.

page[size];
string

Determines the size of each page of results.

Responses
200

The operation was successful.

400

An error occurred on the client side.

403

You are not authorized to perform this action.

404

The resource could not be found.

500

Internal server error.

get/v1/accounts/{account_id}/statement_of_accounts/{statement_id}/bookings
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/accounts/{account_id}/statement_of_accounts/{statement_id}/bookings?page%5Bnumber%5D=string&page%5Bsize%5D%3B=string'
Response samples
application/json
{
  • "id": "fe6561bdb526ed8866e9dac00bd1848ecboo",
  • "creation_date": "2022-01-18",
  • "valuta_date": "2022-01-18",
  • "booking_date": "2022-01-18",
  • "booking_type": "SEPA_CREDIT_TRANSFER",
  • "amount": {
    },
  • "description": "BERLINER VOLKSBANK EG, TXL ABFLUG",
  • "purpose_code": "null",
  • "recipient_bic": "SOBKDEBBXXX",
  • "recipient_iban": "DE97110101002242911754",
  • "recipient_name": "SURIA LUIS VENTURA VIERA PEREIRA RIBEIRO",
  • "receiver_iban_virtual": "string",
  • "sender_bic": "SOBKDEBBXXX",
  • "sender_iban": "DE95110101000018501020",
  • "sender_name": "HANS MUSTERMANN",
  • "end_to_end_id": "END2ENDREJ",
  • "creditor_identifier": "DE98ZZZ09999999999",
  • "mandate_reference": "00000000000001",
  • "transaction_id": "d651ee23300b4e7c8fe7b7e2b2e96trx",
  • "return_transaction_id": "758ea4a268974284ae7af17871f3fdc4",
  • "sepa_charges": {
    },
  • "sepa_return_code": "AC01",
  • "sepa_return_reason": "string",
  • "sepa_return_reason_definition": "string",
  • "meta_info": "\"{\\\"cards\\\":{\\\"card_id\\\":\\\"642b84f1f1960a40a471425c98996941mcrd\\\",\\\"merchant\\\":{\\\"id\\\":\\\"123456789101112\\\",\\\"country_code\\\":\\\"DE\\\",\\\"category_code\\\":\\\"5411\\\",\\\"post_code\\\":\\\"\\\",\\\"state\\\":\\\"\\\",\\\"street_address\\\":\\\"\\\",\\\"name\\\":\\\"testwithMaria AG\\\",\\\"town\\\":\\\"Berlin\\\"},\\\"original_amount\\\":{\\\"fx_rate\\\":1,\\\"currency\\\":\\\"EUR\\\",\\\"value\\\":-1000},\\\"pos_entry_mode\\\":\\\"CONTACTLESS\\\",\\\"trace_id\\\":\\\"652bb834cd7a06b484e9731413cfc89d45100d8b\\\",\\\"transaction_date\\\":\\\"2022-01-20\\\",\\\"transaction_time\\\":\\\"2023-06-26T09:51:13.680259227Z\\\",\\\"transaction_type\\\":\\\"PURCHASE\\\",\\\"ancillary_fees\\\":\\\"[{\\\\\\\"name\\\\\\\":\\\\\\\"BUNDLED_SERVICE\\\\\\\",\\\\\\\"amount\\\\\\\":11111},{\\\\\\\"name\\\\\\\":\\\\\\\"BAGGAGE_FEE\\\\\\\",\\\\\\\"amount\\\\\\\":22222}]\\\",\\\"recorded_at\\\":\\\"2023-06-26T09:52:26Z\\\",\\\"reconciliation_id\\\":null,\\\"auth_code\\\":\\\"234567\\\",\\\"terminal_id\\\":\\\"12345678\\\",\\\"acquirer_id\\\":\\\"123456\\\",\\\"card_scheme\\\":\\\"VISA\\\",\\\"wallet_type\\\":\\\"APPLE\\\",\\\"device_pan\\\":\\\"\\\"}}\", ",
  • "recorded_at": "2022-01-24T00:41:57.634Z",
  • "reconciliation_id": "87271dda6e454393036b4ec2b64b2221itrx",
  • "initiator_reference": "string",
  • "charge_details": "CRED"
}

(Italy only) Index fees for a statement of account

Returns a list of fees associated with a statement of account. The API returns the type of fee (described in the table below) in the name property of each fee, along with the amount (in EUR cents). The count property indicates the number of times that the given fee was charged.
Note: This endpoint is only relevant for customers with an Italian branch bank account.

name value English description Italian description
InterestOverdraft Interest fee for overdraft Interessi debitori (utilizzo intrafido)
InterestOverdraftExceeded Interest fee for overdraft exceeded Interessi debitori (utilizzo extrafido)
InterestExcessDeposit Negative interest Spese di scritturazione contabile
CorrectionInterestExcessDeposit Correction negative interest Rettifica addebito interessi
InterestFixedTermDeposits Interest credit Interessi creditori
ChargeSEPADirectDebitReturn Charge for SEPA Direct Debit return Spese per la restituzione addebito diretto SEPA
ChargeDunning Fee for dunning letter Spese di invio messa in mora
ChargeRecallRequest Fee for transaction recall Revoca operazioni
ChargeCard Issuing of cards Costi di emissione carta
ChargeAccountMaintenance Account maintenance fee Costi di tenuta del conto
ChargeATM Cash withdrawal Prelievo contanti

Request
Security:
path Parameters
account_id
required
string
statement_id
required
string
Responses
200

The operation was successful.

400

An error occurred on the client side.

403

You are not authorized to perform this action.

404

The resource could not be found.

500

Internal server error.

get/v1/accounts/{account_id}/statement_of_accounts/{statement_id}/fees
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/accounts/{account_id}/statement_of_accounts/{statement_id}/fees'
Response samples
application/json
[
  • {
    }
]

Person messages

Index messages for a person's account

Returns an array containing all messages sent to the person specified in the request URL regarding the given account.

Request
Security:
path Parameters
person_id
required
string
account_id
required
string
query Parameters
page[size]
integer
Default: 10

Specifies the number of entries to include in each results page.

page[number]
integer
Default: 1

Specifies the number of results pages to return.

Responses
200

Successful result of the operation.

403

You are not authorized to perform this action.

404

An entity in the request URL could not be found.

get/v1/persons/{person_id}/accounts/{account_id}/messages
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/persons/{person_id}/accounts/{account_id}/messages?page%5Bsize%5D=10&page%5Bnumber%5D=1'
Response samples
application/json
[
  • {
    }
]

Index messages for a person

Returns an array containing all messages sent to the person specified in the request URL.

Request
Security:
path Parameters
person_id
required
string
query Parameters
page[size]
integer
Default: 10

Specifies the number of entries to include in each results page.

page[number]
integer
Default: 1

Specifies the number of results pages to return.

Responses
200

Successful result of the operation.

403

You are not authorized to perform this action.

404

An entity in the request URL could not be found.

get/v1/persons/{person_id}/messages
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/persons/{person_id}/messages?page%5Bsize%5D=10&page%5Bnumber%5D=1'
Response samples
application/json
[
  • {
    }
]

Return a message for a person

Returns a specific message for the person specified in the request URL.

Request
Security:
path Parameters
id
required
string
person_id
required
string
Responses
200

Successful result of the operation.

403

You are not authorized to perform this action.

404

An entity in the request URL could not be found.

get/v1/persons/{person_id}/messages/{id}
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/persons/{person_id}/messages/{id}'
Response samples
application/json
{
  • "id": "f4ed772c970e1096a73d9418192a2d0camsg",
  • "account_id": "c2a13abed3b0686ab5343aa748d7f2fecacc",
  • "title": "Ihre Samsung Pay Bezahlung",
  • "text": "string",
  • "required_notification_channel": "any",
  • "created_at": "2022-06-20T19:02:49Z"
}

Retrieve a message for a person

Returns a specific message for a person regarding the given account as specified in the request URL.

Request
Security:
path Parameters
id
required
string
person_id
required
string
account_id
required
string
Responses
200

Successful result of the operation.

403

You are not authorized to perform this action.

404

An entity in the request URL could not be found.

get/v1/persons/{person_id}/accounts/{account_id}/messages/{id}
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/persons/{person_id}/accounts/{account_id}/messages/{id}'
Response samples
application/json
{
  • "id": "f4ed772c970e1096a73d9418192a2d0camsg",
  • "account_id": "c2a13abed3b0686ab5343aa748d7f2fecacc",
  • "title": "Ihre Samsung Pay Bezahlung",
  • "text": "string",
  • "required_notification_channel": "any",
  • "created_at": "2022-06-20T19:02:49Z"
}

Business messages

Index messages for a business

Returns an array containing all messages sent to the business specified in the request URL regarding the given account.

Request
Security:
path Parameters
business_id
required
string
account_id
required
string
query Parameters
page[size]
integer
Default: 10

Specifies the number of entries to include in each results page.

page[number]
integer
Default: 1

Specifies the number of results pages to return.

Responses
200

Successful result of the operation.

403

You are not authorized to perform this action.

404

An entity in the request URL could not be found.

get/v1/businesses/{business_id}/accounts/{account_id}/messages
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/businesses/{business_id}/accounts/{account_id}/messages?page%5Bsize%5D=10&page%5Bnumber%5D=1'
Response samples
application/json
[
  • {
    }
]

Retrieve a message for a business

Returns a specific message for a business as specified in the request URL.

Request
Security:
path Parameters
id
required
string
business_id
required
string
account_id
required
string
Responses
200

Successful result of the operation.

403

You are not authorized to perform this action.

404

An entity in the request URL could not be found.

get/v1/businesses/{business_id}/accounts/{account_id}/messages/{id}
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/businesses/{business_id}/accounts/{account_id}/messages/{id}'
Response samples
application/json
{
  • "id": "f4ed772c970e1096a73d9418192a2d0camsg",
  • "business_id": "567eaf2b22fce21a1920e14e11e2bfa3cbiz",
  • "person_id": "0ba2211cab11af6094d60ead81f2bd9dcper",
  • "account_id": "c2a13abed3b0686ab5343aa748d7f2fecacc",
  • "title": "Ihre Samsung Pay Bezahlung",
  • "text": "string",
  • "required_notification_channel": "any",
  • "created_at": "2022-06-20T19:02:49Z"
}

Trusted IBANs

Add a trusted IBAN

Adds an IBAN as a trusted IBAN to the account specified in the request URL. Transactions to trusted IBANs do not require two-factor authentication.
Note: This endpoint will trigger the change request process. Specify the person_id of an authorized person on the account who will receive the 2FA challenge to confirm the trusted IBAN.

Request
Security:
path Parameters
account_id
required
string

Unique identifier of a customer's account.

Example: e48c29b85992b8772eb7ddd518490920cacc
Request Body schema: application/json
iban
required
string
person_id
required
string
Responses
200

The IBAN was successfully added as a trusted IBAN.

202

The request has been accepted, and now the customer must complete the change request.

400

Invalid request.

500

Internal server error.

post/v1/accounts/{account_id}/trusted_ibans
Request samples
application/json
{
  • "iban": "string",
  • "person_id": "string"
}
Response samples
application/json
{
  • "iban": "string"
}

Index trusted IBANs for an account

Returns an array containing all IBANs added to the given account as trusted IBANs.

Request
Security:
path Parameters
account_id
required
string
query Parameters
filter[approved_by]
string

Filter the results by the person who approved the trusted IBAN creation requests.

filter[iban]
string

Filter the results by IBAN.

sort
string

Sort the results by the date and time when the trusted IBAN was created.

Example: sort=created_at
page[size]
integer [ 1 .. 1000 ]
Default: 10

Specifies the number of entries to return on each page.

page[number]
integer >= 1
Default: 1

Specifies the number of pages of results to return.

Responses
200

Successful result of the operation.

400

Invalid request.

500

Internal server error.

get/v1/accounts/{account_id}/trusted_ibans
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/accounts/{account_id}/trusted_ibans?filter%5Bapproved_by%5D=string&filter%5Biban%5D=string&sort=string&page%5Bsize%5D=10&page%5Bnumber%5D=1'
Response samples
application/json
[
  • {
    }
]

Delete trusted IBAN

Deletes the trusted IBAN specified in the request URL. Please note the following:

  1. You must submit the person_id of the person who added this trusted IBAN as a query parameter in this request.
  2. This endpoint will trigger the change request process.

Request
Security:
path Parameters
account_id
required
string

Unique identifier of a customer's account.

Example: e48c29b85992b8772eb7ddd518490920cacc
trusted_iban_id
required
string

ID of the trusted IBAN to delete.

query Parameters
person_id
required
string

ID of the person who added the trusted IBAN to the account.

Responses
202

The trusted IBAN was successfully deleted.

204

The trusted IBAN has already been deleted.

400

Invalid request.

500

Internal server error.

delete/v1/accounts/{account_id}/trusted_ibans/{trusted_iban_id}
Request samples
curl -i -X DELETE \
  'https://api.solaris-sandbox.de/v1/accounts/{account_id}/trusted_ibans/{trusted_iban_id}?person_id=string'
Response samples
application/json
{}

Virtual IBANs

List virtual IBANs

Returns all virtual IBANs bound to the account specified in the request.

Request
Security:
path Parameters
account_id
required
string
query Parameters
page[number]
string

The specific results page to return. See the pagination docs for more details.

page[size]
string

The size of the results page to return. See the pagination docs for more details.

filter[virtual_iban]
string

Filters the response for a specific virtual IBAN.

filter[state]
string

Filters the response for virtual IBANs based on their state (ACTIVE or INACTIVE).

Responses
200

Successful result of the operation.

403

You are not authorized to perform this action.

404

The account with the given ID could not be found.

500

Internal server error.

get/v1/accounts/{account_id}/virtual_ibans
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/accounts/{account_id}/virtual_ibans?page%5Bnumber%5D=string&page%5Bsize%5D=string&filter%5Bvirtual_iban%5D=string&filter%5Bstate%5D=string'

Create virtual IBAN

Creates a new virtual IBAN and attaches it to the account specified in the request.

Request
Security:
path Parameters
account_id
required
string
Request Body schema: application/json
customer_id
string

Customer data related to the issued Virtual IBAN. Optional if partner configuration allows issuing vIBANs without customer.

reference
required
string <uuid>

Partners must generate a reference for the vIBAN and supply it in this property. This property acts as an idempotency key and must be unique.

description
string

A description of the vIBAN. Visible to the customer.

Responses
200

The virtual IBAN was already created.

201

The virtual IBAN was created successfully.

400

An error occurred on the client side.

403

You are not authorized to perform this action.

500

Internal server error.

post/v1/accounts/{account_id}/virtual_ibans
Request samples
application/json
{
  • "customer_id": "12312312cus",
  • "reference": "f3757e7e-57ec-4e07-a3f1-7a5d1e412be7",
  • "description": "Example description"
}

Disable virtual IBAN

Changes the state of the virtual IBAN in the request URL to DISABLED.

Request
Security:
path Parameters
account_id
required
string
virtual_iban_id
required
string
Responses
202

The virtual IBAN was successfully disabled.

400

An error occurred on the client side.

403

You are not authorized to perform this action.

404

The (Account | Virtual IBAN) with the ID (account_id | virtual_iban_id) could not be found.

500

Internal server error.

patch/v1/accounts/{account_id}/virtual_ibans/{virtual_iban_id}/disable
Request samples
curl -i -X PATCH \
  'https://api.solaris-sandbox.de/v1/accounts/{account_id}/virtual_ibans/{virtual_iban_id}/disable'

Enable virtual IBAN

Changes the state of a previously disabled virtual IBAN to ENABLED.

Request
Security:
path Parameters
account_id
required
string
virtual_iban_id
required
string
Responses
202

The virtual IBAN was enabled.

400

An error occurred on the client side.

403

You are not authorized to perform this action.

404

The (Account | Virtual IBAN) with the ID (account_id | virtual_iban_id) could not be found.

500

Internal server error.

patch/v1/accounts/{account_id}/virtual_ibans/{virtual_iban_id}/enable
Request samples
curl -i -X PATCH \
  'https://api.solaris-sandbox.de/v1/accounts/{account_id}/virtual_ibans/{virtual_iban_id}/enable'

IBAN validation

Validate an IBAN

This endpoint validates an IBAN. If the IBAN is valid, then the API returns details about the number, e.g., the financial institution of the bank account and the account number.

Request
Security:
Request Body schema: application/json

The content of the request.

iban
string (IBAN)

International Bank Account Number (IBAN).

Responses
200

The supplied IBAN is valid. The response contains more detailed information about the IBAN.

400

The API returns this error when the supplied IBAN is invalid.

post/v1/iban_lookups
Request samples
application/json
{
  • "iban": "DE75512108001245126199"
}
Response samples
application/json
{
  • "iban": "DE75512108001245126199",
  • "bic": "SOBKDEB2XXX",
  • "institution": "solarisBank Gf (S)"
}

Savings Accounts

Map a person's main account to a savings account

Maps a person's savings account to their main (checking) account and then triggers the remaining steps for savings account onboarding. The person may only transfer money to and from their savings account using the main account mapped by this request.

Request
Security:
path Parameters
person_id
required
string

Unique ID of a person.

Example: 111110faed3c03261a08e2660c0c08bdcper
account_id
required
string

Unique ID of a Solaris account.

Example: e48c29b85992b8772eb7ddd518490920cacc
Request Body schema: application/json

The request body.

main_account_id
required
string (MainAccount)

ID of the main account.

deposit_type
required
string (DepositTypes)

The account type.

Value: "SAVINGS_ACCOUNT"
reference
required
string <uuid> (Reference)

UUID to use as an idempotency reference for the transaction.

Responses
202

The mapping was successfully created, and the savings account onboarding process has started.

400

An error occurred on the client side.

403

You are not authorized to perform this action.

404

The provided resource could not be found.

500

Internal server error.

post/v1/persons/{person_id}/deposit_accounts/{account_id}/mappings
Request samples
application/json
{
  • "main_account_id": "148c29b85992b8772eb7ddd518490110cacc",
  • "deposit_type": "SAVINGS_ACCOUNT",
  • "reference": "162ddd7e-790c-5963-908f-4cedfd30f9a1"
}
Response samples
application/json
{
  • "id": "d222a0b8-07ea-49be-83c1-68719be286e8",
  • "main_account_id": "148c29b85992b8772eb7ddd518490110cacc",
  • "status": "OPENED",
  • "deposit_type": "SAVINGS_ACCOUNT",
  • "reference": "162ddd7e-790c-5963-908f-4cedfd30f9a1"
}

Map a business' main account to a savings account

Maps a business' savings account to its main (checking) account and then triggers the remaining steps for savings account onboarding. The business may only transfer money to and from their savings account using the main account mapped by this request.

Request
Security:
path Parameters
business_id
required
string

Unique ID of a business.

Example: 990bbac68a34add190786b9c74f4c82fcbiz
account_id
required
string

Unique ID of a Solaris account.

Example: e48c29b85992b8772eb7ddd518490920cacc
Request Body schema: application/json

The request payload.

main_account_id
required
string (MainAccount)

ID of the main account.

deposit_type
required
string (DepositTypes)

The account type.

Value: "SAVINGS_ACCOUNT"
reference
required
string <uuid> (Reference)

UUID to use as an idempotency reference for the transaction.

Responses
202

The mapping was successfully created, and the savings account onboarding process has started.

400

An error occurred on the client side.

403

You are not authorized to perform this action.

404

The provided resource could not be found..

500

Internal server error.

post/v1/businesses/{business_id}/deposit_accounts/{account_id}/mappings
Request samples
application/json
{
  • "main_account_id": "148c29b85992b8772eb7ddd518490110cacc",
  • "deposit_type": "SAVINGS_ACCOUNT",
  • "reference": "162ddd7e-790c-5963-908f-4cedfd30f9a1"
}
Response samples
application/json
{
  • "id": "d222a0b8-07ea-49be-83c1-68719be286e8",
  • "main_account_id": "148c29b85992b8772eb7ddd518490110cacc",
  • "status": "OPENED",
  • "deposit_type": "SAVINGS_ACCOUNT",
  • "reference": "162ddd7e-790c-5963-908f-4cedfd30f9a1"
}

Create pay-in to a person's savings account

Transfers money from a person's main account to their savings account.

Request
Security:
path Parameters
person_id
required
string

Unique ID of a person.

Example: 111110faed3c03261a08e2660c0c08bdcper
account_id
required
string

Unique ID of a Solaris account.

Example: e48c29b85992b8772eb7ddd518490920cacc
Request Body schema: application/json

The request body.

main_account_id
required
string (MainAccount)

ID of the main account.

reference
required
string <uuid> (Reference)

UUID to use as an idempotency reference for the transaction.

description
string

Optional note about the transaction.

required
object

The amount to pay in to the savings account.

Responses
201

The transaction has been executed.

400

An error occurred on the client side.

403

You are not authorized to perform this action.

404

The provided resource could not be found.

500

Internal server error.

post/v1/persons/{person_id}/deposit_accounts/{account_id}/payin
Request samples
application/json
{
  • "main_account_id": "148c29b85992b8772eb7ddd518490110cacc",
  • "reference": "162ddd7e-790c-5963-908f-4cedfd30f9a1",
  • "description": "Transfer money into Deposit Account",
  • "amount": {
    }
}
Response samples
application/json
{
  • "id": "d222a0b8-07ea-49be-83c1-68719be286e8",
  • "main_account_id": "148c29b85992b8772eb7ddd518490110cacc",
  • "reference": "162ddd7e-790c-5963-908f-4cedfd30f9a1",
  • "description": "Transfer money from Deposit Account to Main Account",
  • "amount": {
    },
  • "created_at": "2023-10-10T16:02:54Z"
}

Create pay-in to a business' savings account

Transfers money from a business' main account to its savings account.

Request
Security:
path Parameters
business_id
required
string

Unique ID of a business.

Example: 990bbac68a34add190786b9c74f4c82fcbiz
account_id
required
string

Unique ID of a Solaris account.

Example: e48c29b85992b8772eb7ddd518490920cacc
Request Body schema: application/json

The request body.

main_account_id
required
string (MainAccount)

ID of the main account.

reference
required
string <uuid> (Reference)

UUID to use as an idempotency reference for the transaction.

description
string

Optional note about the transaction.

required
object

The amount to pay in to the savings account.

Responses
201

The transaction has been executed.

400

An error occurred on the client side.

403

You are not authorized to perform this action.

404

The provided resource could not be found.

500

Internal server error.

post/v1/businesses/{business_id}/deposit_accounts/{account_id}/payin
Request samples
application/json
{
  • "main_account_id": "148c29b85992b8772eb7ddd518490110cacc",
  • "reference": "162ddd7e-790c-5963-908f-4cedfd30f9a1",
  • "description": "Transfer money into Deposit Account",
  • "amount": {
    }
}
Response samples
application/json
{
  • "id": "d222a0b8-07ea-49be-83c1-68719be286e8",
  • "main_account_id": "148c29b85992b8772eb7ddd518490110cacc",
  • "reference": "162ddd7e-790c-5963-908f-4cedfd30f9a1",
  • "description": "Transfer money from Deposit Account to Main Account",
  • "amount": {
    },
  • "created_at": "2023-10-10T16:02:54Z"
}

Create payout from a person's savings account

Transfers money from a person's savings account to their main account.

Request
Security:
path Parameters
person_id
required
string

Unique ID of a person.

Example: 111110faed3c03261a08e2660c0c08bdcper
account_id
required
string

Unique ID of a Solaris account.

Example: e48c29b85992b8772eb7ddd518490920cacc
Request Body schema: application/json

The request body.

main_account_id
required
string (MainAccount)

ID of the main account.

reference
required
string <uuid> (Reference)

UUID to use as an idempotency reference for the transaction.

description
string

Optional note about the transaction.

required
object

The amount to pay out to the main account.

Responses
201

The transaction has been executed.

400

An error occurred on the client side.

403

You are not authorized to perform this action.

404

The provided resource could not be found.

500

Internal server error.

post/v1/persons/{person_id}/deposit_accounts/{account_id}/payout
Request samples
application/json
{
  • "main_account_id": "148c29b85992b8772eb7ddd518490110cacc",
  • "reference": "162ddd7e-790c-5963-908f-4cedfd30f9a1",
  • "description": "Transfer money from Deposit Account to Main Account",
  • "amount": {
    }
}
Response samples
application/json
{
  • "id": "d222a0b8-07ea-49be-83c1-68719be286e8",
  • "main_account_id": "148c29b85992b8772eb7ddd518490110cacc",
  • "reference": "162ddd7e-790c-5963-908f-4cedfd30f9a1",
  • "description": "Transfer money from Deposit Account to Main Account",
  • "amount": {
    },
  • "created_at": "2023-10-10T16:02:54Z"
}

Create payout from a business' savings account

Transfers money from a business' savings account to its main account.

Request
Security:
path Parameters
business_id
required
string

Unique ID of a business.

Example: 990bbac68a34add190786b9c74f4c82fcbiz
account_id
required
string

Unique ID of a Solaris account.

Example: e48c29b85992b8772eb7ddd518490920cacc
Request Body schema: application/json

The request body.

main_account_id
required
string (MainAccount)

ID of the main account.

reference
required
string <uuid> (Reference)

UUID to use as an idempotency reference for the transaction.

description
string

Optional note about the transaction.

required
object

The amount to pay out to the main account.

Responses
201

The transaction has been executed.

400

An error occurred on the client side.

403

You are not authorized to perform this action.

404

The provided resource could not be found.

500

Internal server error.

post/v1/businesses/{business_id}/deposit_accounts/{account_id}/payout
Request samples
application/json
{
  • "main_account_id": "148c29b85992b8772eb7ddd518490110cacc",
  • "reference": "162ddd7e-790c-5963-908f-4cedfd30f9a1",
  • "description": "Transfer money from Deposit Account to Main Account",
  • "amount": {
    }
}
Response samples
application/json
{
  • "id": "d222a0b8-07ea-49be-83c1-68719be286e8",
  • "main_account_id": "148c29b85992b8772eb7ddd518490110cacc",
  • "reference": "162ddd7e-790c-5963-908f-4cedfd30f9a1",
  • "description": "Transfer money from Deposit Account to Main Account",
  • "amount": {
    },
  • "created_at": "2023-10-10T16:02:54Z"
}

Create tax exemption order for a person

Creates a tax exemption order for a person's savings account, specified in the request URL by its ID. Specify the amount to be exempted from tax in the request body.

Request
Security:
path Parameters
person_id
required
string

Unique ID of a person.

Example: 111110faed3c03261a08e2660c0c08bdcper
account_id
required
string

Unique ID of a Solaris account.

Example: e48c29b85992b8772eb7ddd518490920cacc
Request Body schema: application/json

Tax Exemption Request payload.

reference
required
string <uuid> (Reference)

UUID to use as an idempotency reference for the transaction.

required
object

The amount to be exempted from tax.

valid_from_year
required
string (ValidFromYear)

Year from which the tax exemption order takes effect.

valid_to_year
string (ValidToYear)

Year until which the tax exemption order applies.

Responses
202

The request for a tax exemption order has been submitted for processing.

400

An error occurred on the client side.

403

You are not authorized to perform this action.

404

The provided resource could not be found.

409

Record not unique.

500

Internal server error.

post/v1/persons/{person_id}/deposit_accounts/{account_id}/tax_exemptions
Request samples
application/json
{
  • "reference": "162ddd7e-790c-5963-908f-4cedfd30f9a1",
  • "amount": {
    },
  • "valid_from_year": "2023",
  • "valid_to_year": "2025"
}
Response samples
application/json
{
  • "id": "d222a0b8-07ea-49be-83c1-68719be286e8",
  • "reference": "162ddd7e-790c-5963-908f-4cedfd30f9a1",
  • "amount": {
    },
  • "valid_from_year": "2023",
  • "valid_to_year": "2025"
}

Update a person's tax exemption order

Modifies the time period and/or tax-exempt amount of a person's tax exemption order.

Request
Security:
path Parameters
person_id
required
string

Unique ID of a person.

Example: 111110faed3c03261a08e2660c0c08bdcper
account_id
required
string

Unique ID of a Solaris account.

Example: e48c29b85992b8772eb7ddd518490920cacc
Request Body schema: application/json

The request payload.

object

The amount to be exempted from tax.

valid_from_year
string (ValidFromYear)

Year from which the tax exemption order takes effect.

valid_to_year
string (ValidToYear)

Year until which the tax exemption order applies.

Responses
202

The request to update the tax exemption order has been submitted for processing.

400

An error occurred on the client side.

403

You are not authorized to perform this action.

404

The provided resource could not be found.

500

Internal server error.

patch/v1/persons/{person_id}/deposit_accounts/{account_id}/tax_exemptions
Request samples
application/json
{
  • "amount": {
    },
  • "valid_from_year": "2023",
  • "valid_to_year": "2025"
}
Response samples
application/json
{
  • "id": "d222a0b8-07ea-49be-83c1-68719be286e8",
  • "amount": {
    },
  • "valid_from_year": "2023",
  • "valid_to_year": "2025"
}

Retrieve a person's tax exemption order

Returns the tax exemption order for the person specified in the request URL.

Request
Security:
path Parameters
person_id
required
string

Unique ID of a person.

Example: 111110faed3c03261a08e2660c0c08bdcper
account_id
required
string

Unique ID of a Solaris account.

Example: e48c29b85992b8772eb7ddd518490920cacc
Responses
200

The request was successful.

400

An error occurred on the client side.

403

You are not authorized to perform this action.

404

The provided resource could not be found.

500

Internal server error.

get/v1/persons/{person_id}/deposit_accounts/{account_id}/tax_exemptions
Request samples
curl -i -X GET \
  'https://api.solaris-sandbox.de/v1/persons/{person_id}/deposit_accounts/{account_id}/tax_exemptions'
Response samples
application/json
{
  • "id": "d222a0b8-07ea-49be-83c1-68719be286e8",
  • "reference": "162ddd7e-790c-5963-908f-4cedfd30f9a1",
  • "amount": {
    },
  • "valid_from_year": "2023",
  • "valid_to_year": "2025",
  • "status": "ACTIVE"
}

Remove a person's tax exemption order

Deletes the tax exemption order for the person specified in the request URL.
Note that you should only use this endpoint for erroneous or wrongly submitted tax exemption orders that were not utilized. Please use PATCH Close a person's tax exemption order to close previously utilized tax exemption orders.

Request
Security:
path Parameters
person_id
required
string

Unique ID of a person.

Example: 111110faed3c03261a08e2660c0c08bdcper
account_id
required
string

Unique ID of a Solaris account.

Example: e48c29b85992b8772eb7ddd518490920cacc
Responses
202

The request to delete the tax exemption order was successfully submitted.

400

An error occurred on the client side.

403

You are not authorized to perform this action.

404

The provided resource could not be found.

500

Internal server error.

delete/v1/persons/{person_id}/deposit_accounts/{account_id}/tax_exemptions
Request samples
curl -i -X DELETE \
  'https://api.solaris-sandbox.de/v1/persons/{person_id}/deposit_accounts/{account_id}/tax_exemptions'
Response samples
application/json
{
  • "id": "d222a0b8-07ea-49be-83c1-68719be286e8"
}

Close a person's tax exemption order

Closes the tax exemption order for the person specified in the request URL.
Note that you should only use this endpoint for previously utilized tax exemption orders. To delete erroneous or wrongly submitted tax exemption orders that were not utilized, please use DELETE Remove a person's tax exemption order.

Request
Security:
path Parameters
person_id
required
string

Unique ID of a person.

Example: 111110faed3c03261a08e2660c0c08bdcper
account_id
required
string

Unique ID of a Solaris account.

Example: e48c29b85992b8772eb7ddd518490920cacc
Responses
202

The request to close the person's tax exemption order was successfully submitted.

400

An error occurred on the client side.

403

You are not authorized to perform this action.

404

The provided resource could not be found.

500

Internal server error.

patch/v1/persons/{person_id}/deposit_accounts/{account_id}/tax_exemptions/close
Request samples
curl -i -X PATCH \
  'https://api.solaris-sandbox.de/v1/persons/{person_id}/deposit_accounts/{account_id}/tax_exemptions/close'
Response samples
application/json
{
  • "id": "d222a0b8-07ea-49be-83c1-68719be286e8"
}