Enable Payment Accounts on your sandbox application and simulate third-party payins and payouts including the screening and Verification of Payee flows.
Everything on this page is self-serve on the sandbox environment — you do not need to contact us to try Payment Accounts there. The Simulator in your sandbox partner dashboard has a Payment Accounts section with three tabs: Payment Accounts, SEPA Payin (3P), and SEPA Payout (3P).
Screening and Verification of Payee on sandbox are simulated and free. Both outcomes are driven entirely by the names you choose (below), so you can exercise every flow deterministically.
Driving the screening outcome with names
| Name you enter | Simulated screening outcome |
|---|---|
Contains SANCTION or OFAC (e.g. SANCTION TEST GmbH) — or is a real OFAC SDN-listed name | Match — the blocked/held flow |
| Any other name | Clear |
This convention applies to the payin senderName and to the declared payee name on payouts alike.
Driving the Verification of Payee outcome with names
The declared payee's full name (first + last, or the company name; matched trimmed and case-insensitively) selects the result:
| Declared payee name | vop.status |
|---|---|
Close Match | CLOSE_MATCH, with matchedName: "Closer Match" returned |
No Match | NO_MATCH |
Unavailable Payee | UNAVAILABLE |
| Any other name | MATCH |
1. Enable the feature and record consent
On the Payment Accounts tab:
- Enable Payment Accounts for your sandbox application with the toggle. On production this is done by Lightspark Payments Europe after the agreement is signed; on sandbox you flip it yourself. The tab also shows the resulting state, including whether third-party SEPA payouts are effectively enabled.
- Record consent for a test user by entering their
userIdand choosing accepted or not. This performs the same consent recording asPOST /user/payment-account/consent— you can equally call the API yourself; the tab is just the quickest way to get a user gated in.
Remember: a user transacts under Payment Account rules only when the application flag and the user's consent are both in place. A sandbox user without consent on an enabled application exercises the same gating as production: third-party declarations and payouts refuse with 31128.
2. Simulate a third-party payin
On the SEPA Payin (3P) tab, send a simulated incoming SEPA transfer:
accountId— the user's EUR account to credit.amount— in cents (e.g.10000= 100.00 EUR).senderName— the name of the simulated sender. Use a name different from the account holder's KYC name to make the payin third-party; a name matching the account holder exercises the unchanged first-party flow.- Sender IBAN/BIC and a payment reference, optionally.
The sandbox payin simulator currently demonstrates the previous third-party payin flow (credit first, revert on a screening match). Production holds third-party payins under a lien and credits nothing before the screening verdict — see Third-Party SEPA Payins for the behavior to build against. The sandbox port of the lien flow is in progress; this page will be updated when it lands.
3. Simulate a third-party payout
The SEPA Payout (3P) tab walks the full outgoing flow described in Third-Party SEPA Payouts:
- Whitelist a beneficiary —
userId, destination IBAN + BIC, and the payee declaration (Whitelist Destination IBAN):beneficiaryType+firstName/lastName(ornamefor a company), orownAccount: true. The response carries the simulatedvopresult (names table above). Declaring a payee on an existing row viaPOST /wallets/whitelist-iban/payeeworks on sandbox too. You can also list the user's whitelisted IBANs from here. - Initiate a payout —
userId, sourceaccountId, and amount, against either thewhitelistedIbanIdor a raw destination (IBAN + BIC + declaration). - Confirm the transaction — with the
challengeIdfrom the initiate step. As with the rest of the sandbox environment, no SMS is actually sent and the verification code is always123456. - Update the payout status — drive the simulated bank leg to
COMPLETEDorFAILED(byaccountId+transactionId) to receive the correspondingSEPA_PAYOUT_COMPLETED/SEPA_PAYOUT_FAILEDwebhooks.
A payee whose declared name matches the sanctions convention above exercises the held flow: the payout is accepted but paused for review instead of proceeding. A clear name proceeds normally once screening completes.

