Dummy Accounts
For development and testing purposes, the PayData API provides a set of so-called dummy account types. These can be used to test the partner software without connecting to a real payment provider — they generate synthetic transactions instead of talking to an actual PSP.
- the GetAccountTypes method returns dummy types along with the real ones;
- the details of each type can be obtained with the GetAccountType method
There are the following dummy account types:
dummy- type without OAuth2 authorization and without reports; requires atoken/token-secretand astart-date.dummy-oauth- type with OAuth2 authorization (has anauth-referencefield of typeAuth), otherwise the same fields asdummy.dummy-reports- same fields asdummy, buthasPspReportsistrueso it also exercises the reports flow.dummy-shop- same fields asdummy, plus a requiredshop-urlfield, for testing account types that are tied to a shop/store URL (like most e-commerce marketplace integrations).
The dummy account types are available in the sandbox environment only.
Simulating errors and warnings
All dummy account types also expose one or more Checkbox fields that let you deliberately trigger error
and warning states without needing a misbehaving real PSP — useful for testing how your integration
handles the error and warning states described elsewhere
in these docs. All four dummy types expose import-errors and credentials-validation-errors;
dummy-reports additionally exposes reports-list-errors and validation-errors; dummy-oauth and
dummy-shop additionally expose validation-warnings. None of these flags affect the CreateAccount
response itself — the account is always created normally — they instead affect what happens the next time
PayData imports data for the account:
| Field | Effect |
|---|---|
import-errors | Every generated report ends up in state import_error with errors: [{"type": "ReportParseFailure", "message": "Report parse failure"}]. The corresponding TransactionsImported notification carries transactions.status: "Failed" with errors: [{"type": "ImportFailure", "message": "Error importing transactions"}]. No transactions are ever imported while the flag stays set. |
validation-errors (dummy-reports only) | Every generated report ends up in state import_error with errors: [{"type": "ReportValidationFailure", ...}] and a simulated payout-mismatch message (see Reports). The TransactionsImported notification carries transactions.errors: [{"type": "ImportFailure", "message": "Validation error during import"}]. The report and transactions are imported after giving the PSP or PayData the time for a bugfix. |
reports-list-errors (dummy-reports only) | The error is treated as a temporary error initially with errors: {"type": "ImportFailure", "message": "There was an error connecting to the PSP or receiving data. The operation will be retried.", "isTemporary": true}. The TransactionsImported notification still fires, with transactions.errors: [{"type": "ReportDownloadFailure", "message": "Error listing reports"}] and no report object attached. After some days the temporary error will result in a permanent error and the import of the account will be suspended. No transactions are ever imported while the flag stays set. |