Testing & Mock Bank

Test Feezback payment, mandate, payout, AIS, and VIEW flows with Mock Bank on the integration environment..

Test Feezback payment, mandate, and consent flows with Mock Bank before sending real users or real money through production flows.

Feezback provides a Mock Bank that you can use for integration testing and controlled production testing. Use it to validate JWT signing, link generation, redirects, webhook handling, and status processing without using real bank accounts.

Never use Mock Bank with real users or real payments.

Mock Bank credentials

Use these credentials when a flow asks for bank login or account details.

FieldValue
ID200200202
Bank code120120 mockBank
Branch001
Account number999999

Environments

Mock Bank can be used in the integration environment and, when enabled, in production testing.

EnvironmentBase behavior
IntegrationUse lgs-integ01.feezback.cloud and Mock Bank test details.

Prerequisite to test

Before going live, test each end-to-end flow your integration uses.

AreaWhat to verify
JWT signingJWTs are signed with RS512 and accepted by Feezback.
Environment routingIntegration requests go to integration domains and production requests go to production domains.
Link generation/link returns a usable link.
Token generation/token returns a bearer token for API-based flows.
RedirectsSuccess, failure, not-complete, and TTL-expired redirects work.
WebhooksYour endpoint receives events and returns HTTP 200 within 3 seconds.
IdempotencyReprocessing the same webhook does not create duplicate business actions.
Status handlingYour system handles success, rejection, expiry, partial authorization, and bank-side errors.
Account whitelistingProduction creditor accounts are approved before real payments.

Single/Periodic Payment test

Use Single Payment with the Mock Bank credentials.

Recommended checks:

  1. Create a FAST JWT with srv: "fast/user".
  2. Include encrypt: true at the JWT top level.
  3. Send the signed JWT to /link.
  4. Open the returned link.
  5. Select or enter the Mock Bank details.
  6. Complete the payment flow.
  7. Confirm that your webhook receives PaymentStatusChanged.
  8. Confirm that your system correlates the webhook using payload.context.

Simulate different results using mockbank account number and different userIdentifier

Mocbank:

FieldValue
Bank code120120
Branch001
Account number999999

User identifier:

User Identifier (ת.ז)Outcome Status
200200202
acceptedTechnicalValidation
336794482
Payment creation finishes with error=access_denied in redirect back URL
998814644
rejected
336009196
received
320634389
partiallyAcceptedTechnicalCorrect
211200100
partiallyAcceptedTechnicalCorrect, then changes to acceptedTechnicalValidation in 10 seconds
553934746
partiallyAcceptedTechnicalCorrect, then changes to rejected in 10 seconds
553934779
partiallyAcceptedTechnicalCorrect, then changes to expired in 10 seconds

Mandate test outcomes

Simulate different results using mockbank account number and different userIdentifier

Mocbank:

FieldValue
Bank code120120
Branch001
Account number999999

User identifier:

User Identifier (ת.ז)Outcome Status
200200202
Valid
669029530
Valid after a 15-second delay
222822538
Rejected
200200301
partiallyAuthorized
200200707
partiallyAuthorized, then valid after 5 minutes

Recommended checks:

  1. Create a Mandate JWT with srv: "mandate/user".
  2. Send the signed JWT to /link.
  3. Complete the flow with the relevant test PSU ID.
  4. Confirm your webhook receives MandateStatusChanged.
  5. Confirm your billing system charges only when currentStatus is valid.

Bulk Payout test outcomes

Simulate different results using mockbank account number and different userIdentifier

Mocbank:

FieldValue
Bank code120120
Branch001
Account number999999

User identifier:

User Identifier (ת.ז)Outcome Status
200200202
Accepted — technical validation
998814644
Rejected
320634389
partiallyAuthorized

Recommended checks:

  1. Generate a bearer token with srv: "seamless/tpp".
  2. Submit a bulk payment request to /tpp/v1/users/{sub}@{tpp_id}/bulk-payments.
  3. Complete the authorization flow with the relevant test PSU ID.
  4. Confirm your system handles accepted, rejected, and partially authorized outcomes.
  5. Confirm your system stores the batch context and payment identifiers.

AIS and VIEW testing

For data products, test the full consent lifecycle.

AIS test checklist

  1. Create a consent link with srv: "ais/user".
  2. Complete the consent flow.
  3. Request a bearer token with srv: "ais/tpp".
  4. Fetch accounts and related data from the TPP data API.
  5. Handle consent statuses such as valid, rejected, expired, and revokedByPsu.

VIEW test checklist

  1. Create a consent link with srv: "view_ais/user".
  2. Complete the consent flow.
  3. Wait for UserInsightReady.
  4. Fetch the Insights report.
  5. Confirm your system handles missing or empty financialEvents arrays.

Simulate different results using mockbank account number and different userIdentifier

Mocbank:

FieldValue
Bank code120120
Branch001
Account number999999

User identifier:

User Identifier (ת.ז)Outcome
999076599
Valid consent with access to all account types
200200301
partiallyAuthorized consent
200200707
partiallyAuthorized, then valid after 5 minutes
222822538
Rejected
669029530
consent with delayed creation response

Webhook testing checklist

Test webhooks before going live.

  1. Whitelist all Feezback webhook IPs for the environment.
  2. Confirm your webhook endpoint accepts external POST requests.
  3. Confirm it parses JSON request bodies.
  4. Confirm it stores the full payload.
  5. Confirm it returns HTTP 200 within 3 seconds.
  6. Confirm duplicate events are handled idempotently.
  7. Confirm unknown fields do not break parsing.

See Webhooks for IP addresses and payload examples.

Go-live readiness checklist

Before production launch:

  1. Register the production public key with Feezback.
  2. Confirm production backend IPs are whitelisted.
  3. Confirm production webhook IPs are whitelisted on your side.
  4. Confirm production creditor accounts are approved for payments.
  5. Run one final end-to-end test with the Feezback team when required.
  6. Confirm your support process for payment, mandate, data, and webhook issues.

Treat testing as complete only after your system has processed both successful and unsuccessful outcomes for every product flow you plan to use.


Did this page help you?