# Transactions Version: 1.0 ## Servers Sandbox ``` https://api.solaris-sandbox.de ``` Production ``` https://api.solarisbank.de ``` ## Download OpenAPI description [Transactions](https://docs.solarisgroup.com/_spec/api-reference/digital-banking/transactions.yaml) ## Cash Operations (Viacash) ### Request a cash operation - [POST /v1/persons/{person_id}/accounts/{account_id}/cash_operations](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/cash-operations-(viacash)/solaris_account_cash_service_cash_operations_create.md): This method requests the creation of a cash operation barcode for the customer to present at the POS of a participating Viacash retailer. Note that this endpoint requires a Once the customer confirms the change request, Viafintech processes the request and then the Solaris API returns a payload containing an EAN-13 barcode with an expiration date and a status. Each person may only have one active (i.e., PENDING/CREATED) cash operation request of each type (payin/payout) at a time. Ensure that the amount of the cash operation falls within the allowed range and does not exceed any daily limits. See the Viacash documentation for more information about limits. ### Retrieve a cash operation - [GET /v1/cash_operations/{cash_operation_id}](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/cash-operations-(viacash)/solaris_account_cash_service_cash_operations_find.md): Returns the cash operation specified in the request URL. ### Cancel a cash operation - [DELETE /v1/cash_operations/{cash_operation_id}](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/cash-operations-(viacash)/solaris_account_cash_service_cash_operations_delete.md): Cancels the cash operation specified in the request URL. You can only use this endpoint to cancel cash operations with a status of or . This method will trigger the webhook. ### (Sandbox only) Test cash operation process - [PATCH /v1/cash_operations/{cash_operation_id}](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/cash-operations-(viacash)/solaris_account_cash_service_cash_operations_emulate-events.md): This endpoint allows you to manually update the status of a cash operation. You may only use this endpoint on Sandbox. You may only use this endpoint on cash operations with a of , and you may only supply the values , , or . ### List all cash operations for an account - [GET /v1/accounts/{account_id}/cash_operations](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/cash-operations-(viacash)/solaris_account_cash_service_cash_operations_all.md): Returns a paginated list of all associated with the customer account specified in the request URL. ## Clearing transactions ### Index clearing profiles - [GET /v1/clearing_profiles](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/clearing-transactions/paths/~1v1~1clearing_profiles/get.md): Returns an array containing all clearing profiles under your control. ### Create a credit clearing transaction - [POST /v1/accounts/{account_id}/credit_clearing_transactions](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/clearing-transactions/paths/~1v1~1accounts~1%7Baccount_id%7D~1credit_clearing_transactions/post.md): Creates a credit clearing transaction on the account specified in the request URL. The funds will be sent this account the account defined in the clearing profile sent in the request body. ### Create debit clearing transaction - [POST /v1/accounts/{account_id}/debit_clearing_transactions](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/clearing-transactions/paths/~1v1~1accounts~1%7Baccount_id%7D~1debit_clearing_transactions/post.md): Creates a debit clearing transaction to the account specified in the request URL. Funds will be drawn the account defined in the clearing profile the account in the URL. ### Get a clearing transaction - [GET /v1/accounts/{account_id}/clearing_transactions/{clearing_transaction_id}](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/clearing-transactions/paths/~1v1~1accounts~1%7Baccount_id%7D~1clearing_transactions~1%7Bclearing_transaction_id%7D/get.md): Returns the clearing transaction specified in the request URL. ## Instant Top-Ups ### Create a Top-Up - [POST /v1/persons/{person_id}/accounts/{account_id}/topups](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/instant-top-ups/paths/~1v1~1persons~1%7Bperson_id%7D~1accounts~1%7Baccount_id%7D~1topups/post.md): Creates a Top-Up for the person's account specified in the request URL. Calling this endpoint will begin the payment process with Solaris and its acquiring partner (e.g., Stripe). Note that you must provide the returned to the Acquirer's SDK (e.g., the Stripe ). ### Index Top-Ups for a person's account - [GET /v1/persons/{person_id}/accounts/{account_id}/topups](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/instant-top-ups/paths/~1v1~1persons~1%7Bperson_id%7D~1accounts~1%7Baccount_id%7D~1topups/get.md): Returns an array containing all Top-Ups for the person's account specified in the request URL. ### Retrieve a Top-Up - [GET /v1/persons/{person_id}/accounts/{account_id}/topups/{topup_id}](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/instant-top-ups/paths/~1v1~1persons~1%7Bperson_id%7D~1accounts~1%7Baccount_id%7D~1topups~1%7Btopup_id%7D/get.md): Returns the Top-Up with the ID specified in the request URL. ### Cancel a Top-Up - [POST /v1/persons/{person_id}/accounts/{account_id}/topups/{topup_id}/cancel](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/instant-top-ups/paths/~1v1~1persons~1%7Bperson_id%7D~1accounts~1%7Baccount_id%7D~1topups~1%7Btopup_id%7D~1cancel/post.md): Cancels the Top-Up specified in the request URL. Specify the reason for the cancellation in the request body. ## Instant Top-Up Payment Methods ### Index payment methods for a person - [GET /v1/persons/{person_id}/topups/payment_methods](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/instant-top-up-payment-methods/paths/~1v1~1persons~1%7Bperson_id%7D~1topups~1payment_methods/get.md): Returns an array containing all payment methods that have been stored for the person specified in the request URL. ### Delete a payment method - [DELETE /v1/persons/{person_id}/topups/payment_methods/{payment_method_id}](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/instant-top-up-payment-methods/paths/~1v1~1persons~1%7Bperson_id%7D~1topups~1payment_methods~1%7Bpayment_method_id%7D/delete.md): Deletes the payment method with the ID specified in the request URL. ## Intra-customer transfers ### Create intra-customer transfer - [POST /v1/persons/{person_id}/accounts/{account_id}/transactions/intra_customer_transfer](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/intra-customer-transfers/paths/~1v1~1persons~1%7Bperson_id%7D~1accounts~1%7Baccount_id%7D~1transactions~1intra_customer_transfer/post.md): Initiates a transaction between the main- and sub-account of a single customer. This transaction does require a change request. Both the account owner and any authorized person on the account may initiate this type of transaction. ## Prepaid accounts ### Top up a prepaid card - [POST /v1/accounts/{account_id}/transactions/intra_emoney_payin](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/prepaid-accounts/paths/~1v1~1accounts~1%7Baccount_id%7D~1transactions~1intra_emoney_payin/post.md): Tops up a prepaid card by transferring money from an account to an account. ### Pay out from prepaid card to prepaid pooling account - [POST /v1/accounts/{account_id}/transactions/intra_emoney_payout](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/prepaid-accounts/paths/~1v1~1accounts~1%7Baccount_id%7D~1transactions~1intra_emoney_payout/post.md): Pays out money from a prepaid card by transferring money from an account to an account. ### Create prepaid account credit transfer - [POST /v1/accounts/{account_id}/transactions/intra_emoney_transfer](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/prepaid-accounts/paths/~1v1~1accounts~1%7Baccount_id%7D~1transactions~1intra_emoney_transfer/post.md): Transfers money between an and an account. ## Partner remittances ### Index partner remittances - [GET /v1/partner_remittances](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/partner-remittances/paths/~1v1~1partner_remittances/get.md): Returns an array containing all partner remittances for all of your customers. ### Create a partner remittance - [POST /v1/accounts/{account_id}/partner_remittances](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/partner-remittances/paths/~1v1~1accounts~1%7Baccount_id%7D~1partner_remittances/post.md): Creates a partner remittance transaction for the account specified in the request URL. Note that this endpoint requires a ### Refund a partner remittance - [PATCH /v1/accounts/{account_id}/partner_remittances/{partner_remittance_id}/refund](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/partner-remittances/paths/~1v1~1accounts~1%7Baccount_id%7D~1partner_remittances~1%7Bpartner_remittance_id%7D~1refund/patch.md): Initiates the refund process for a partner remittance. Use this endpoint if you cannot credit the recipient's account, e.g., due to the beneficiary account being closed or blocked. When the refund is completed, you will receive a webhook notification for the sender's account, and the of the partner remittance will change to . Note that you may only use this endpoints on partner remittances with a of . ### Show a partner remittance - [GET /v1/accounts/{account_id}/partner_remittances/{partner_remittance_id}](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/partner-remittances/paths/~1v1~1accounts~1%7Baccount_id%7D~1partner_remittances~1%7Bpartner_remittance_id%7D/get.md): Returns the partner remittance specified in the request URL. ## Reference account payouts ### Initiate payout to a specific person reference account - [POST /v1/persons/{person_id}/accounts/{account_id}/reference_accounts/{reference_account_id}/payouts](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/reference-account-payouts/paths/~1v1~1persons~1%7Bperson_id%7D~1accounts~1%7Baccount_id%7D~1reference_accounts~1%7Breference_account_id%7D~1payouts/post.md): Initiates a payout to the person reference account specified in the request URL. Requests to this endpoint must be confirmed using the process. ### Index payouts to a specific person reference account - [GET /v1/persons/{person_id}/accounts/{account_id}/reference_accounts/{reference_account_id}/payouts](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/reference-account-payouts/paths/~1v1~1persons~1%7Bperson_id%7D~1accounts~1%7Baccount_id%7D~1reference_accounts~1%7Breference_account_id%7D~1payouts/get.md): Returns an array containing all payouts made to the particular reference account specified in the request URL. ### Initiate a payout to a business' reference account - [POST /v1/businesses/{business_id}/accounts/{account_id}/reference_accounts/{reference_account_id}/payouts](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/reference-account-payouts/paths/~1v1~1businesses~1%7Bbusiness_id%7D~1accounts~1%7Baccount_id%7D~1reference_accounts~1%7Breference_account_id%7D~1payouts/post.md): Initiates a payout from a business' wallet to the specific reference account specified in the request URL. Requests to this endpoint must be confirmed using the process. ### Index reference account payouts for a business account - [GET /v1/businesses/{business_id}/accounts/{account_id}/reference_accounts/{reference_account_id}/payouts](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/reference-account-payouts/paths/~1v1~1businesses~1%7Bbusiness_id%7D~1accounts~1%7Baccount_id%7D~1reference_accounts~1%7Breference_account_id%7D~1payouts/get.md): Returns an array containing all reference account payouts for the business account specified in the request URL. ### Initiate business reference account payout - [POST /v1/businesses/{business_id}/accounts/{account_id}/reference_account_payouts](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/reference-account-payouts/paths/~1v1~1businesses~1%7Bbusiness_id%7D~1accounts~1%7Baccount_id%7D~1reference_account_payouts/post.md): Initiates a payout from a business' wallet to its associated reference account. Requests to this endpoint must be confirmed using the process. ### Index business reference account payouts - [GET /v1/businesses/{business_id}/accounts/{account_id}/reference_account_payouts](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/reference-account-payouts/paths/~1v1~1businesses~1%7Bbusiness_id%7D~1accounts~1%7Baccount_id%7D~1reference_account_payouts/get.md): Returns an array containing all wallet payouts to the business reference account specified in the request URL. ### Retrieve a business reference account payout - [GET /v1/businesses/{business_id}/accounts/{account_id}/reference_account_payouts/{id}](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/reference-account-payouts/paths/~1v1~1businesses~1%7Bbusiness_id%7D~1accounts~1%7Baccount_id%7D~1reference_account_payouts~1%7Bid%7D/get.md): Retrieves the business reference account payout specified in the request URL. ### Initiate reference account payout to a person - [POST /v1/persons/{person_id}/accounts/{account_id}/reference_account_payouts](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/reference-account-payouts/paths/~1v1~1persons~1%7Bperson_id%7D~1accounts~1%7Baccount_id%7D~1reference_account_payouts/post.md): Initiates a payout from a person's wallet to their reference account. Requests to this endpoint must be confirmed using the process. ### Index reference account payouts to a person - [GET /v1/persons/{person_id}/accounts/{account_id}/reference_account_payouts](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/reference-account-payouts/paths/~1v1~1persons~1%7Bperson_id%7D~1accounts~1%7Baccount_id%7D~1reference_account_payouts/get.md): Returns an array containing all payouts to a person's reference account. ### Retrieve a reference account payout to a person - [GET /v1/persons/{person_id}/accounts/{account_id}/reference_account_payouts/{id}](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/reference-account-payouts/paths/~1v1~1persons~1%7Bperson_id%7D~1accounts~1%7Baccount_id%7D~1reference_account_payouts~1%7Bid%7D/get.md): Returns a specific reference account payout to a person based on the ID specified in the request URL. ### Retrieve a payout to a person's reference account - [GET /v1/persons/{person_id}/accounts/{account_id}/reference_accounts/{reference_account_id}/payouts/{id}](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/reference-account-payouts/paths/~1v1~1persons~1%7Bperson_id%7D~1accounts~1%7Baccount_id%7D~1reference_accounts~1%7Breference_account_id%7D~1payouts~1%7Bid%7D/get.md): Returns a specific payout to a specific reference account. ### Retrieve a payout to a business reference account - [GET /v1/businesses/{business_id}/accounts/{account_id}/reference_accounts/{reference_account_id}/payouts/{id}](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/reference-account-payouts/paths/~1v1~1businesses~1%7Bbusiness_id%7D~1accounts~1%7Baccount_id%7D~1reference_accounts~1%7Breference_account_id%7D~1payouts~1%7Bid%7D/get.md): Returns a specific payout to a specific reference account. ### (New) Initiate a payout to a reference account - [POST /v1/accounts/{account_id}/reference_account_payouts](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/reference-account-payouts/paths/~1v1~1accounts~1%7Baccount_id%7D~1reference_account_payouts/post.md): Initiates a payout to the reference account specified in the request payout. The specified reference account must be associated with the account specified in the request path. Payout will be executed after 2FA confirmation. This endpoint replaces old Reference Account Payouts endpoints which will be deprecated soon. ## Transfer requests ### Create transfer request - [POST /v1/accounts/{account_id}/transfer_requests](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/transfer-requests/paths/~1v1~1accounts~1%7Baccount_id%7D~1transfer_requests/post.md): Creates a transfer request and associates it with the account specified in the request URL. This method will create a reservation on the account for the amount specified in the transfer request. ### Index transfer requests for an account - [GET /v1/accounts/{account_id}/transfer_requests](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/transfer-requests/paths/~1v1~1accounts~1%7Baccount_id%7D~1transfer_requests/get.md): Returns an array containing all transfer requests associated with the account specified in the request URL. ### Retrieve a transfer request - [GET /v1/accounts/{account_id}/transfer_requests/{transfer_request_id}](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/transfer-requests/paths/~1v1~1accounts~1%7Baccount_id%7D~1transfer_requests~1%7Btransfer_request_id%7D/get.md): Returns information about the transfer request specified in the request URL. ### Index transfer request executions - [GET /v1/accounts/{account_id}/transfer_requests/{transfer_request_id}/executions](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/transfer-requests/paths/~1v1~1accounts~1%7Baccount_id%7D~1transfer_requests~1%7Btransfer_request_id%7D~1executions/get.md): Returns an array containing all transfer request executions for the account specified in the request URL. ### Execute a transfer request - [POST /v1/accounts/{account_id}/transfer_requests/{transfer_request_id}/executions](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/transfer-requests/paths/~1v1~1accounts~1%7Baccount_id%7D~1transfer_requests~1%7Btransfer_request_id%7D~1executions/post.md): Executes the transfer request specified in the request URL. Note that you can execute a transfer request for the transfer request amount. In case the amount is lower, a new reservation of the remaining amount will be created and the associated of the transfer request will be updated. You must then release the previous reservation using PATCH Resolve a transfer request. ### Resolve a transfer request - [PATCH /v1/accounts/{account_id}/transfer_requests/{transfer_request_id}/resolve](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/transfer-requests/paths/~1v1~1accounts~1%7Baccount_id%7D~1transfer_requests~1%7Btransfer_request_id%7D~1resolve/patch.md): Trigger release of reservation amount ## (Legacy) Money Transfer ### Show account - [GET /v1/money_transfer/account](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/(legacy)-money-transfer/paths/~1v1~1money_transfer~1account/get.md): Return account with id ### Index Booking - [GET /v1/money_transfer/account/bookings](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/(legacy)-money-transfer/paths/~1v1~1money_transfer~1account~1bookings/get.md): Return all bookings for account ### Index customers balances - [GET /v1/money_transfer/customers/balances](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/(legacy)-money-transfer/paths/~1v1~1money_transfer~1customers~1balances/get.md): List of customers balances ### Index customers - [GET /v1/money_transfer/customers](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/(legacy)-money-transfer/paths/~1v1~1money_transfer~1customers/get.md): Index customers ### Create Customer - [POST /v1/money_transfer/customers](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/(legacy)-money-transfer/paths/~1v1~1money_transfer~1customers/post.md): Create Customer for Partner ### Show customers balance - [GET /v1/money_transfer/customers/{id}/balance](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/(legacy)-money-transfer/paths/~1v1~1money_transfer~1customers~1%7Bid%7D~1balance/get.md): Show customers balance ### Show Customer - [GET /v1/money_transfer/customers/{id}](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/(legacy)-money-transfer/paths/~1v1~1money_transfer~1customers~1%7Bid%7D/get.md): Show Customer for Partner ### Update Customer - [PATCH /v1/money_transfer/customers/{id}](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/(legacy)-money-transfer/paths/~1v1~1money_transfer~1customers~1%7Bid%7D/patch.md): Update Customer for Partner ### Index customer transactions - [GET /v1/money_transfer/customers/{id}/transactions](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/(legacy)-money-transfer/paths/~1v1~1money_transfer~1customers~1%7Bid%7D~1transactions/get.md): List of transactions done by customer ### Terminate Customer - [PATCH /v1/money_transfer/customers/{id}/terminate](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/(legacy)-money-transfer/paths/~1v1~1money_transfer~1customers~1%7Bid%7D~1terminate/patch.md): Terminate customer for partner ### Create Payin - [POST /v1/money_transfer/payments/payin](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/(legacy)-money-transfer/paths/~1v1~1money_transfer~1payments~1payin/post.md): Create Payin payment ### Index payments - [GET /v1/money_transfer/payments](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/(legacy)-money-transfer/paths/~1v1~1money_transfer~1payments/get.md): Index payments ### Show Payment - [GET /v1/money_transfer/payments/{id}](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/(legacy)-money-transfer/paths/~1v1~1money_transfer~1payments~1%7Bid%7D/get.md): Show selected Payment ### List transactions in payment - [GET /v1/money_transfer/payments/{id}/transactions](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/(legacy)-money-transfer/paths/~1v1~1money_transfer~1payments~1%7Bid%7D~1transactions/get.md): List of transactions related to given payment id ### Create Sepa Credit Transfer - [POST /v1/money_transfer/payments/sepa_credit_transfer](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/(legacy)-money-transfer/paths/~1v1~1money_transfer~1payments~1sepa_credit_transfer/post.md): Create Sepa Credit Transfer payout ### Create Sepa Direct Debit - [POST /v1/money_transfer/payments/sepa_direct_debit](https://docs.solarisgroup.com/api-reference/digital-banking/transactions/(legacy)-money-transfer/paths/~1v1~1money_transfer~1payments~1sepa_direct_debit/post.md): Create Sepa Direct Debit payment