https://staging.bwire.io/api/finxp-callback

FinxpCallbackController

Request

GET Parameters

No GET parameters

POST Parameters

No POST parameters

Uploaded Files

No files were uploaded

Request Attributes

Key Value
_controller
"App\UI\Public\Controller\FinxpCallbackController"
_firewall_context
"security.firewall.map.context.api"
_remove_csp_headers
true
_route
"api_finxp_callback"
_route_params
[]
_stopwatch_token
"e0d124"

Request Headers

Header Value
accept
"application/json"
accept-encoding
"gzip"
authorization
""
content-length
"881"
content-type
"application/json"
host
"staging.bwire.io"
port
"80"
traceparent
"00-a8c53aaa6cb4104aff5d420218b17b67-d7713dc45efe3d57-01"
user-agent
"FinXP webhooks-v1.3.25"
x-finxp-attempt
"258"
x-finxp-request-id
"01a1281d-1d31-7f52-a5fb-67bd40417b02"
x-finxp-sent-at
"2026-10-10T23:19:19.089Z"
x-finxp-signature
"Jhgh3pukFG2iXRjSKJTp0voAy1DcsjXAZtU0JPwhx/gnEZIGWvBL274nerjkgFzFLCNC3BjwYig9cVwKokCYPQ/hm+tkQQcVCIUejj3J8q2L20YRaGcogLnCDuHw5uoi5adKXc3ngUDAYbtf+H0h0ZI8sJg45GSkCpSDzqX8CGsGZgfXw+V/nV1tYK9bjeCzKyE97HPMDXnfzsiXhYOGoLV7iH54EjlLyOAxvmrDjUZ5vhfQlxayii6v0nj72K4Cmi1+Mjs/iy2c5A6mKRsHRMd/6Jy78QLL2rGM6VgrBddWoSwZqLQ0VReIlVnJ3NTjPfIW7mURT57lN0gjXHyKCw=="
x-finxp-signature-alg
"RSA-PSS"
x-finxp-signature-key-id
"20240801_webhooks"
x-php-ob-level
"1"
x-trace-id
"a8c53aaa6cb4104aff5d420218b17b67"

Request Content

Pretty

{
    "event": "txn.StatusChanged",
    "id": "01a11a86-e8cd-7776-ae26-f763bc99b416",
    "version": "1",
    "merchantId": "01a02386-92d1-723b-ba1e-15b42453e267",
    "channelId": "01a02389-e88f-723b-809e-9cda636074cb",
    "payload": {
        "txn": {
            "id": "01a1106b-23cc-7c0d-9e3b-732d5ce96904",
            "txnRefNo": "2627901539219000",
            "channelId": "01a02389-e88f-723b-809e-9cda636074cb",
            "type": "SEPA_DD",
            "status": "REJECTED",
            "amount": "20",
            "currency": "EUR",
            "debitorName": "John Doe",
            "debitorIBAN": "DE89370400440532013000",
            "debitorBIC": "COBADEFFXXX",
            "creditorName": "Irbico B.V",
            "creditorIBAN": "MT28PAUU92005050500010025950001",
            "creditorBIC": "PAUUMTM1XXX",
            "mandateRef": "MDR-001",
            "mandateDate": "2026-10-05",
            "endToEndId": "E2E01A1106B23917C0D9E3784223C16EA9A",
            "merchantTxnRef": "TXN-TEST-1001",
            "remittanceInfo": "Invoice .1001",
            "instructionDate": "2026-10-08",
            "updatedAt": "2026-10-06T08:53:40.291561Z",
            "createdAt": "2026-10-06T08:53:39.404654Z"
        }
    }
}

Raw

{"event":"txn.StatusChanged","id":"01a11a86-e8cd-7776-ae26-f763bc99b416","version":"1","merchantId":"01a02386-92d1-723b-ba1e-15b42453e267","channelId":"01a02389-e88f-723b-809e-9cda636074cb","payload":{"txn":{"id":"01a1106b-23cc-7c0d-9e3b-732d5ce96904","txnRefNo":"2627901539219000","channelId":"01a02389-e88f-723b-809e-9cda636074cb","type":"SEPA_DD","status":"REJECTED","amount":"20","currency":"EUR","debitorName":"John Doe","debitorIBAN":"DE89370400440532013000","debitorBIC":"COBADEFFXXX","creditorName":"Irbico B.V","creditorIBAN":"MT28PAUU92005050500010025950001","creditorBIC":"PAUUMTM1XXX","mandateRef":"MDR-001","mandateDate":"2026-10-05","endToEndId":"E2E01A1106B23917C0D9E3784223C16EA9A","merchantTxnRef":"TXN-TEST-1001","remittanceInfo":"Invoice .1001","instructionDate":"2026-10-08","updatedAt":"2026-10-06T08:53:40.291561Z","createdAt":"2026-10-06T08:53:39.404654Z"}}}

Response

Response Headers

Header Value
cache-control
"no-cache, private"
content-type
"application/json"
date
"Sat, 10 Oct 2026 23:19:19 GMT"
vary
"Accept"
x-debug-exception
"An%20exception%20occurred%20while%20executing%20a%20query%3A%20SQLSTATE%5B42P01%5D%3A%20Undefined%20table%3A%207%20ERROR%3A%20%20relation%20%22recurring_payments%22%20does%20not%20exist%0ALINE%202%3A%20%20%20%20%20%20%20%20%20%20%20%20%20%20FROM%20recurring_payments%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5E"
x-debug-exception-file
"%2Fvar%2Fwww%2Fbwire%2Fvendor%2Fdoctrine%2Fdbal%2Fsrc%2FDriver%2FAPI%2FPostgreSQL%2FExceptionConverter.php:71"
x-debug-token
"d43fcc"
x-debug-token-link
"https://staging.bwire.io/_profiler/5438bb"
x-previous-debug-token
"5438bb"
x-robots-tag
"noindex"

Cookies

Request Cookies

No request cookies

Response Cookies

No response cookies

Session

Session Metadata

No session metadata

Session Attributes

No session attributes

Session Usage

0 Usages
Stateless check enabled

Session not used.

Flashes

Flashes

No flash messages were created.

Server Parameters

Server Parameters

Defined in .env

Key Value
API_DOC_URL
"https://docs.google.com/document/d/1LROSdzJtsJCDWfmNo8jjNj2dGMuXsU_iBYkEF73BAAk"
APP_DEBUG
"1"
APP_ENV
"dev"
APP_SECRET
"18584d91e107afdb8c03bf8619663090"
AWS_ACCESS_KEY_ID
"AKIAWQUOZQ3CRL2MWYHO"
AWS_BUCKET
"bwire-data"
AWS_REGION
"eu-west-3"
AWS_SECRET_ACCESS_KEY
"knzyhEAM9SdfzJMT4kQ0V0dD4iEs1NqJkQymVin4"
AWS_SES_DSN
"smtp://AKIAWQUOZQ3CYBS7ZHOS:BAPpMAq4o%2BBxtyIgks%2Fz84E4EDlpaf40CIzj%2FfgXNkEe@email-smtp.eu-west-3.amazonaws.com:587"
AWS_SES_PASSWORD
"BAPpMAq4o%2BBxtyIgks%2Fz84E4EDlpaf40CIzj%2FfgXNkEe"
AWS_SES_REGION
"eu-west-3"
AWS_SES_USERNAME
"AKIAWQUOZQ3CYBS7ZHOS"
CORS_ALLOW_ORIGIN
"*"
DATABASE_PORT
"5432"
DATABASE_URL
"pgsql://postgres:postgres@bwire-staging.chw2qcwm0qns.eu-west-3.rds.amazonaws.com:5432/bwire_staging"
DIMOCO_CHANNEL_ID
"5da1bc3d-ac17-43a5-948b-54070f81af6b"
DOMAIN
"app.bwire.io"
EMAIL_SENDER_EMAIL
"noreply@app.bwire.io"
EMAIL_SENDER_NAME
"b.wire"
HTTPS_PORT
"443"
HTTP_PORT
"80"
IBANXS_API_BASE_URL
"https://sandbox.ibanxs.eu/api/"
IBANXS_API_BASE_URL_V1
"https://sandbox.ibanxs.eu/api/v1/"
IBANXS_AUTH_TOKEN_URL
"https://sandboxauth.bankxs.eu/auth/realms/GatewayRealm/protocol/openid-connect/token"
IBANXS_ONBOARDING_API_URL
"https://sandbox.bankxs.eu/api/v1/records/onboarding-form-company-en"
IBANXS_ONBOARDING_CLIENT_ID
"84CN2AOPCLA83W1I"
IBANXS_ONBOARDING_CLIENT_SECRET
"b6f32bda-77eb-4615-b33b-c64bd4f484a8"
IBANXS_ONBOARDING_REDIRECTION_URL
"https://staging.bwire.io/admin/onboarding-users/onboarding/tab/close"
IBANXS_ONBOARDING_STATUS_CALLBACK_URL
"https://webhook.site/YOUR-UNIQUE-ID"
JWT_PASSPHRASE
"f71479814a20ffa0e54c1eb52125fe4b"
JWT_PUBLIC_KEY
"%kernel.project_dir%/config/jwt/public.pem"
JWT_SECRET_KEY
"%kernel.project_dir%/config/jwt/private.pem"
MAILER_DSN
"smtp://postfix:587?verify_peer=0"
NOTIFICATION_DELAY
"1"
NOTIFICATION_MAX_DELAY
"180"
NOTIFICATION_MAX_RETRIES
"60"
NOTIFICATION_MULTIPLIER
"2"
POSTGRES_DB
"bwire_staging"
POSTGRES_PASSWORD
"postgres"
POSTGRES_USER
"postgres"
REDIS_URL
"redis://localhost"
SYSTEM_NAME
"b.wire"
SYSTEM_VERSION
"1.0-alpha"
X_API_KEY
"322037b23a1a9f5c50955666a2ef0801"

Defined as regular env variables

Key Value
CONTENT_LENGTH
"881"
CONTENT_TYPE
"application/json"
CONTEXT_DOCUMENT_ROOT
"/var/www/bwire/public"
CONTEXT_PREFIX
""
DOCUMENT_ROOT
"/var/www/bwire/public"
GATEWAY_INTERFACE
"CGI/1.1"
HTTPS
"on"
HTTP_ACCEPT
"application/json"
HTTP_ACCEPT_ENCODING
"gzip"
HTTP_AUTHORIZATION
""
HTTP_HOST
"staging.bwire.io"
HTTP_TRACEPARENT
"00-a8c53aaa6cb4104aff5d420218b17b67-d7713dc45efe3d57-01"
HTTP_USER_AGENT
"FinXP webhooks-v1.3.25"
HTTP_X_FINXP_ATTEMPT
"258"
HTTP_X_FINXP_REQUEST_ID
"01a1281d-1d31-7f52-a5fb-67bd40417b02"
HTTP_X_FINXP_SENT_AT
"2026-10-10T23:19:19.089Z"
HTTP_X_FINXP_SIGNATURE
"Jhgh3pukFG2iXRjSKJTp0voAy1DcsjXAZtU0JPwhx/gnEZIGWvBL274nerjkgFzFLCNC3BjwYig9cVwKokCYPQ/hm+tkQQcVCIUejj3J8q2L20YRaGcogLnCDuHw5uoi5adKXc3ngUDAYbtf+H0h0ZI8sJg45GSkCpSDzqX8CGsGZgfXw+V/nV1tYK9bjeCzKyE97HPMDXnfzsiXhYOGoLV7iH54EjlLyOAxvmrDjUZ5vhfQlxayii6v0nj72K4Cmi1+Mjs/iy2c5A6mKRsHRMd/6Jy78QLL2rGM6VgrBddWoSwZqLQ0VReIlVnJ3NTjPfIW7mURT57lN0gjXHyKCw=="
HTTP_X_FINXP_SIGNATURE_ALG
"RSA-PSS"
HTTP_X_FINXP_SIGNATURE_KEY_ID
"20240801_webhooks"
HTTP_X_TRACE_ID
"a8c53aaa6cb4104aff5d420218b17b67"
PATH
"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/snap/bin"
PHP_SELF
"/index.php"
QUERY_STRING
""
REDIRECT_HTTPS
"on"
REDIRECT_HTTP_AUTHORIZATION
""
REDIRECT_SSL_TLS_SNI
"staging.bwire.io"
REDIRECT_STATUS
"200"
REDIRECT_URL
"/api/finxp-callback"
REMOTE_ADDR
"20.238.113.21"
REMOTE_PORT
"1031"
REQUEST_METHOD
"POST"
REQUEST_SCHEME
"https"
REQUEST_TIME
1791674359
REQUEST_TIME_FLOAT
1791674359.283
REQUEST_URI
"/api/finxp-callback"
SCRIPT_FILENAME
"/var/www/bwire/public/index.php"
SCRIPT_NAME
"/index.php"
SERVER_ADDR
"172.31.37.44"
SERVER_ADMIN
"contact@iglulabs.com"
SERVER_NAME
"staging.bwire.io"
SERVER_PORT
"443"
SERVER_PROTOCOL
"HTTP/1.1"
SERVER_SIGNATURE
"<address>Apache/2.4.58 (Ubuntu) Server at staging.bwire.io Port 443</address>\n"
SERVER_SOFTWARE
"Apache/2.4.58 (Ubuntu)"
SSL_TLS_SNI
"staging.bwire.io"
SYMFONY_DOTENV_VARS
"SYSTEM_NAME,SYSTEM_VERSION,APP_ENV,APP_DEBUG,APP_SECRET,HTTP_PORT,HTTPS_PORT,DATABASE_PORT,POSTGRES_USER,POSTGRES_PASSWORD,POSTGRES_DB,DATABASE_URL,CORS_ALLOW_ORIGIN,REDIS_URL,JWT_SECRET_KEY,JWT_PUBLIC_KEY,JWT_PASSPHRASE,MAILER_DSN,EMAIL_SENDER_EMAIL,EMAIL_SENDER_NAME,DOMAIN,API_DOC_URL,NOTIFICATION_DELAY,NOTIFICATION_MULTIPLIER,NOTIFICATION_MAX_RETRIES,NOTIFICATION_MAX_DELAY,AWS_SES_USERNAME,AWS_SES_PASSWORD,AWS_SES_REGION,AWS_SES_DSN,AWS_ACCESS_KEY_ID,AWS_SECRET_ACCESS_KEY,AWS_REGION,AWS_BUCKET,IBANXS_AUTH_TOKEN_URL,IBANXS_API_BASE_URL,IBANXS_API_BASE_URL_V1,IBANXS_ONBOARDING_API_URL,IBANXS_ONBOARDING_CLIENT_ID,IBANXS_ONBOARDING_CLIENT_SECRET,IBANXS_ONBOARDING_REDIRECTION_URL,IBANXS_ONBOARDING_STATUS_CALLBACK_URL,X_API_KEY,DIMOCO_CHANNEL_ID"

Sub Requests 1

ErrorController (token = 5438bb)

Key Value
_controller
"error_controller"
_stopwatch_token
"a87a13"
exception
Doctrine\DBAL\Exception\TableNotFoundException {#659
  #message: """
    An exception occurred while executing a query: SQLSTATE[42P01]: Undefined table: 7 ERROR:  relation "recurring_payments" does not exist\n
    LINE 2:              FROM recurring_payments\n
                              ^
    """
  #code: 7
  #file: "/var/www/bwire/vendor/doctrine/dbal/src/Driver/API/PostgreSQL/ExceptionConverter.php"
  #line: 71
  -previous: Doctrine\DBAL\Driver\PDO\Exception {#639 …}
  -query: Doctrine\DBAL\Query {#502 …}
  trace: {
    /var/www/bwire/vendor/doctrine/dbal/src/Driver/API/PostgreSQL/ExceptionConverter.php:71 {
      Doctrine\DBAL\Driver\API\PostgreSQL\ExceptionConverter->convert(Exception $exception, ?Query $query): DriverException …
      › case '42P01':
      ›     return new TableNotFoundException($exception, $query);
      › 
    }
    /var/www/bwire/vendor/doctrine/dbal/src/Connection.php:1907 {
      Doctrine\DBAL\Connection->handleDriverException(Exception $driverException, ?Query $query): DriverException …
      › $this->exceptionConverter ??= $this->_driver->getExceptionConverter();
      › $exception                  = $this->exceptionConverter->convert($driverException, $query);
      › 
    }
    /var/www/bwire/vendor/doctrine/dbal/src/Connection.php:1850 {
      Doctrine\DBAL\Connection->convertExceptionDuringQuery(Exception $e, string $sql, array $params = [], array $types = []): DriverException …
      › ): DriverException {
      ›     return $this->handleDriverException($e, new Query($sql, $params, $types));
      › }
    }
    /var/www/bwire/vendor/doctrine/dbal/src/Connection.php:1069 {
      Doctrine\DBAL\Connection->executeQuery(string $sql, array $params = [], $types = [], QueryCacheProfile $qcp = null): Result …
      › } catch (Driver\Exception $e) {
      ›     throw $this->convertExceptionDuringQuery($e, $sql, $params, $types);
      › } finally {
    }
    /var/www/bwire/vendor/doctrine/dbal/src/Connection.php:551 {
      Doctrine\DBAL\Connection->fetchAssociative(string $query, array $params = [], array $types = []) …
      › {
      ›     return $this->executeQuery($query, $params, $types)->fetchAssociative();
      › }
    }
    /var/www/bwire/src/Application/Payment/Service/FinxpPaymentService.php:887 {
      App\Application\Payment\Service\FinxpPaymentService->findRecurringPaymentByTxnId(string $txnId): ?array …
      ›      LIMIT 1",
      ›     ['txn_id' => $txnId]
      › );
    }
    /var/www/bwire/src/UI/Public/Controller/FinxpCallbackController.php:105 {
      App\UI\Public\Controller\FinxpCallbackController->__invoke(Request $request): JsonResponse …
      › 
      › $recurringPayment = $this->finxpPaymentService->findRecurringPaymentByTxnId((string) $txnId);
      › 
    }
    /var/www/bwire/vendor/symfony/http-kernel/HttpKernel.php:163 {
      Symfony\Component\HttpKernel\HttpKernel->handleRaw(Request $request, int $type = self::MAIN_REQUEST): Response …
      › // call controller
      › $response = $controller(...$arguments);
      › 
    }
    /var/www/bwire/vendor/symfony/http-kernel/HttpKernel.php:75 {
      Symfony\Component\HttpKernel\HttpKernel->handle(Request $request, int $type = HttpKernelInterface::MAIN_REQUEST, bool $catch = true): Response …
      › try {
      ›     return $this->handleRaw($request, $type);
      › } catch (\Exception $e) {
    }
    /var/www/bwire/vendor/symfony/http-kernel/Kernel.php:202 {
      Symfony\Component\HttpKernel\Kernel->handle(Request $request, int $type = HttpKernelInterface::MAIN_REQUEST, bool $catch = true): Response …
      › try {
      ›     return $this->getHttpKernel()->handle($request, $type, $catch);
      › } finally {
    }
    /var/www/bwire/vendor/symfony/runtime/Runner/Symfony/HttpKernelRunner.php:35 {
      Symfony\Component\Runtime\Runner\Symfony\HttpKernelRunner->run(): int …
      › {
      ›     $response = $this->kernel->handle($this->request);
      ›     $response->send();
    }
    /var/www/bwire/vendor/autoload_runtime.php:29 {
      require_once …
      ›         ->getRunner($app)
      ›         ->run()
      › );
    }
    /var/www/bwire/public/index.php:5 {
      › 
      › require_once dirname(__DIR__).'/vendor/autoload_runtime.php';
      › 
      arguments: {
        "/var/www/bwire/vendor/autoload_runtime.php"
      }
    }
  }
}
logger
Symfony\Bridge\Monolog\Logger {#337 …9}