πŸŽ‰ Use coupon MYXERO to enjoy 20% recurring discount on any plan. View Pricing
BANKpay+ Instant Bank Payments for WooCommerce (EUR)
BANKpay+ Instant Bank Payments for WooCommerce (EUR)

BANKpay+ Instant Bank Payments for WooCommerce (EUR)

0/5 (0 ratings) 10 active installs Updated Apr 12, 2026
Payment gateway settings

Payment gateway settings

πŸš€ Transform Your Payment Processing with Instant SEPA Bank Transfers

BANKpay+ for WooCommerce enables your store to accept instant SEPA bank transfers with settlement in just 7 seconds. No card fees, no chargebacks, just instant bank-to-bank payments.

Accept instant SEPA payments via BANKpay+ Real-time bank transfers with 7-second settlement directly into your bank account. A secure and convenient payment method that boosts conversions and customer satisfaction.

🎯 Key Benefits

  • ⚑ 7-Second Settlement – Get your money instantly, not in days
  • πŸ’° Up to 70% Lower Fees – Save thousands compared to card processors
  • πŸ›‘οΈ Zero Chargebacks – Bank transfers are final and irreversible
  • 🏦 3000+ Banks Supported – Works with all major European banking institutions
  • βœ… EU Regulation Compliant – Late Payment Directive, PSD2, GDPR
  • πŸ€– AI Invoice Processing – Auto-extract payment details and send smart reminders
  • πŸ“± Mobile-First Experience – Optimized for smartphone banking apps
  • πŸ”„ One-Click Repeat Payments – Returning customers pay with a single tap

πŸ’‘ Why Choose BANKpay+ Over Card Payments?

πŸ’° Save Money

  • Credit card fees: 1.5-3.5% per transaction
  • BANKpay+ fees: Starting at 0.5% (save up to €2,500/month on €100k revenue)
  • No monthly fees, no setup costs – free for the first 30 days!

⚑ Get Paid Instantly

  • Settlement time: 7 seconds (vs. 2-7 days with cards) directly into your bank account.
  • Same-day access to your money
  • Improved cash flow management

πŸ›‘οΈ Zero Chargeback Risk

  • Bank transfers are final and irreversible
  • No fraudulent chargebacks
  • No chargeback fees (typically €15-25 each)

😊 Better Customer Experience

  • No card details required
  • Works with all European banks (3000+ institutions)
  • Mobile-first payment flow
  • One-click payments for returning customers

πŸ‘₯ Who Should Use This?

Perfect for:

  • πŸ’Ό B2B businesses needing compliance with EU Late Payment Directive
  • πŸͺ Online stores serving European customers
  • πŸ“¦ High-volume merchants wanting to reduce payment processing costs
  • πŸ“ˆ Subscription businesses needing reliable recurring payments
  • πŸ›οΈ Professional services (lawyers, accountants, consultants)
  • πŸ’° Merchants tired of chargebacks and fraud
  • ⚑ Businesses needing instant access to funds for better cash flow

πŸš€ Features

πŸ’Έ Payment Processing

  • ⚑ Instant Settlement – Money in your account within 7 seconds
  • πŸ’° Low Fees – Significantly lower than card processing fees (starting at 0.5%)
  • πŸ›‘οΈ No Chargebacks – Bank transfers are final and secure
  • 🌍 EU Coverage – Accept payments from customers across Europe
  • ↩️ Refunds – Process refunds directly from WooCommerce
  • βœ“ IBAN Validation – Real-time validation with MOD-97 checksum (70+ countries)
  • πŸ”„ Returning Customers – One-click payment with saved bank selection

πŸ›οΈ Compliance & Professional Features

  • πŸ’Ό Professional Payment Workflows – Maintain compliance and professionalism
  • πŸ“… Payment Terms Management – Track due dates and automate follow-ups
  • πŸ“Š Audit Trail – Complete payment history for regulatory compliance

βš™οΈ Admin Experience

  • πŸ“Š Analytics Dashboard – Comprehensive payment analytics with Chart.js visualizations
  • πŸ“‹ Transaction Management – View all BANKpay+ payments in dedicated admin panel
  • πŸ“ˆ Payment Dashboard – Real-time statistics (today, week, month, all-time)
  • πŸ“‰ Performance Metrics – Success rates, volume trends, and processing times
  • 🏦 Bank Analytics – Top performing banks with usage statistics
  • πŸ’Ύ CSV Export – Download analytics data for external analysis
  • πŸ” Order Details – Payment information displayed on order edit screen
  • πŸ“± WordPress Dashboard Widget – Quick overview of payment activity
  • πŸ”Ž Search & Filter – Find transactions by status, customer, or order number

πŸ”’ Security & Reliability

  • πŸ” Bank-Grade Security – Webhook signature verification and HMAC authentication
  • 🚦 Rate Limiting – Automatic protection against webhook abuse
  • πŸ” Replay Protection – Timestamp validation prevents duplicate processing
  • πŸ›‘οΈ CSRF Protection – All admin actions protected with capability checks
  • πŸ”’ Security Headers – CSP, HSTS, X-Frame-Options, and more

πŸ‘¨β€πŸ’» Developer Friendly

  • πŸ§ͺ Test Mode – Sandbox environment for testing
  • ⚑ HPOS Compatible – Full support for High-Performance Order Storage
  • βœ… WordPress Standards – Follows WordPress and WooCommerce coding standards
  • πŸ”Œ Extensible – Hooks and filters for customization
  • πŸ”— REST API – Public endpoint for IBAN validation

πŸ“‹ Requirements

  • βœ… WooCommerce 8.0 or higher
  • βœ… PHP 8.0 or higher
  • βœ… WordPress 6.0 or higher
  • βœ… BANKpay+ merchant account (Sign up here)

βš™οΈ How It Works

  1. πŸ›’ Customer selects BANKpay+ at checkout
  2. 🏦 Customer is redirected to select their bank
  3. πŸ“± Customer authorizes payment in their banking app
  4. ⚑ Payment is confirmed and settled instantly
  5. βœ… Customer is returned to your store

πŸš€ Get Started in 5 Minutes

  1. πŸ“₯ Install – Download from WordPress.org or search in your admin panel
  2. βœ… Activate – Click “Activate” in your plugins list
  3. πŸ”— Connect – Run the setup wizard (WooCommerce Settings Payments BANKpay+)
  4. πŸ§ͺ Test – Place a test order to verify everything works
  5. πŸŽ‰ Go Live – Switch from test mode to live mode

πŸ’‘ Easy Setup: Our guided setup wizard walks you through every step. No technical knowledge required!

Translations

BANKpay+ for WooCommerce is fully translated and available in 6 languages:

  • English (en_US) – Default, 100% complete
  • German (de_DE) – Deutsch, 100% complete (~98 strings)
  • Italian (it_IT) – Italiano, 100% complete (~98 strings)
  • Portuguese (pt_PT) – PortuguΓͺs, 100% complete (~98 strings)
  • Spanish (es_ES) – EspaΓ±ol, 100% complete (~98 strings)
  • Greek (el) – Ελληνικά, 100% complete (~98 strings)

Contributing Translations

We welcome translation contributions! You can contribute in two ways:

  1. Via WordPress.org (recommended)
    Visit: https://translate.wordpress.org/projects/wp-plugins/bankpay-open-banking-sepa-payments-for-woocommerce/
    Translations submitted via GlotPress are automatically included in language packs.

  2. Via GitHub
    Fork the repository, translate the PO files in the languages/ directory, and submit a pull request.
    See languages/README.md for detailed translation guidelines.

Translation Credits

  • German: BANKpay+ Team (based on BANKpay+ application translations)
  • Italian: BANKpay+ Team (professional translation)
  • Portuguese: BANKpay+ Team (professional translation)
  • Spanish: BANKpay+ Team (professional translation)
  • Greek: BANKpay+ Team (professional translation for compliance market)

Thank you to all translators for making BANKpay+ accessible to users across Europe!

For Translators

Total strings to translate: 309
– PHP strings: ~271 (admin interface, settings, error messages)
– JavaScript strings: ~38 (customer-facing UI, validation feedback)

Key terminology:
– “Instant Bank Transfer” “SEPA-SofortΓΌberweisung” (DE)
– “Settlement” “Abwicklung” (DE)
– “Bank-grade security” “Bank-Level Sicherheit” (DE)

For complete translation guidelines, glossary, and context notes, see:
languages/README.md in the plugin directory

For Developers

BANKpay+ is built with developers in mind, featuring extensive hooks, filters, and well-documented APIs for customization and integration.

Architecture

Design Patterns:

  • Dependency Injection Container
  • Repository Pattern for order operations
  • Observer Pattern for webhook events
  • Strategy Pattern for payment flows

Key Components:

  • WC_Gateway_BANKpay_Plus – Main gateway class extending WC_Payment_Gateway
  • BANKpay_Plus_API – RESTful API client with retry logic
  • BANKpay_Plus_Webhook – Webhook handler with signature verification
  • BANKpay_Plus_Analytics – Payment metrics and reporting
  • BANKpay_Plus_IBAN_Validator – MOD-97 validation with 70+ country support

API Integration

Authentication:

Authorization: Bearer {access_token}
X-API-Key: {api_key}
X-HMAC-Signature: {hmac_sha256}

Create Checkout Session:

POST /api/checkout/create
{
  "amount": 100.00,
  "currency": "EUR",
  "reference": "Order #123",
  "return_url": "https://yourstore.com/checkout/thank-you",
  "webhook_url": "https://yourstore.com/?wc-api=wc_gateway_bankpay_plus"
}

Webhook Payload:

POST /?wc-api=wc_gateway_bankpay_plus
{
  "event": "checkout.completed",
  "checkout_id": "chk_123",
  "payment_id": "pay_456",
  "status": "completed",
  "timestamp": "2025-01-26T15:30:00Z"
}

Hooks & Filters

Actions (Execution Points):

  • bankpay_plus_payment_initiated – Fires when payment initiates
  • bankpay_plus_payment_complete – Fires when payment completes
  • bankpay_plus_payment_failed – Fires when payment fails
  • bankpay_plus_refund_completed – Fires when refund processes
  • bankpay_plus_webhook_received – Fires on webhook receipt
  • bankpay_plus_webhook_verified – Fires after signature verification
  • bankpay_plus_webhook_failed – Fires on webhook error
  • bankpay_plus_analytics_event – Fires on analytics tracking

Filters (Data Modification):

  • bankpay_plus_gateway_title – Customize payment method title
  • bankpay_plus_gateway_description – Customize checkout description
  • bankpay_plus_payment_button_text – Customize payment button text
  • bankpay_plus_checkout_data – Modify checkout session data
  • bankpay_plus_api_endpoint – Change API endpoint URL
  • bankpay_plus_api_timeout – Adjust API request timeout (default: 30s)
  • bankpay_plus_iban_valid – Override IBAN validation result
  • bankpay_plus_bank_list_cache_ttl – Adjust bank list cache (default: 24h)
  • bankpay_plus_webhook_rate_limit – Adjust webhook rate limit (default: 50/min)
  • bankpay_plus_verify_webhook_signature – Toggle signature verification

Code Examples

Example 1: Custom Payment Completion Logic

add_action('bankpay_plus_payment_complete', 'my_custom_payment_handler', 10, 2);

function my_custom_payment_handler($order_id, $payment_data) {
    $order = wc_get_order($order_id);

    // Send custom confirmation email
    wp_mail(
        $order->get_billing_email(),
        'Payment Confirmed - Instant Delivery',
        'Your payment was processed in 7 seconds!'
    );

    // Trigger fulfillment webhook
    wp_remote_post('https://warehouse.example.com/fulfill', [
        'body' => json_encode([
            'order_id' => $order_id,
            'payment_method' => 'bankpay_instant'
        ])
    ]);
}

Example 2: Customize Gateway Title

add_filter('bankpay_plus_gateway_title', 'custom_gateway_title', 10, 2);

function custom_gateway_title($title, $order_id) {
    return $title . ' (Money in 7 seconds)';
}

Example 3: Validate Custom Business Rules

add_filter('bankpay_plus_checkout_data', 'add_business_rules', 10, 2);

function add_business_rules($data, $order) {
    // Add custom validation for high-value orders
    if ($order->get_total() > 1000) {
        $data['require_phone_verification'] = true;
    }

    // Add custom metadata
    $data['merchant_reference'] = get_option('custom_order_prefix') . $order->get_id();

    return $data;
}

Example 4: Track Conversions in Analytics

add_action('woocommerce_thankyou', 'track_bankpay_conversion', 10, 1);

function track_bankpay_conversion($order_id) {
    $order = wc_get_order($order_id);

    if ($order->get_payment_method() === 'bankpay_plus') {
        do_action('my_analytics_track', [
            'event' => 'instant_payment_completed',
            'value' => $order->get_total(),
            'settlement_time' => '7_seconds'
        ]);
    }
}

REST API Endpoints

IBAN Validation:

POST /wp-json/bankpay-plus/v1/validate-iban
{
  "iban": "DE89370400440532013000"
}

Response:
{
  "valid": true,
  "country": "DE",
  "bank_code": "37040044",
  "checksum_valid": true,
  "formatted": "DE89 3704 0044 0532 0130 00"
}

Rate Limiting: 10 requests per minute per IP address
Caching: Validation results cached for 30 days
Algorithm: MOD-97 checksum validation for 70+ countries

Database Schema

Analytics Table: {$wpdb->prefix}bankpay_plus_analytics

CREATE TABLE wp_bankpay_plus_analytics (
  event_id BIGINT AUTO_INCREMENT PRIMARY KEY,
  order_id BIGINT NOT NULL,
  checkout_uuid VARCHAR(100),
  event_type VARCHAR(50) NOT NULL,
  event_timestamp DATETIME NOT NULL,
  order_total DECIMAL(10,2),
  currency VARCHAR(3),
  customer_email VARCHAR(100),
  bank_connector_id INT,
  bank_name VARCHAR(255),
  processing_time_ms INT,
  is_returning_customer TINYINT(1),
  user_agent_hash VARCHAR(64),
  INDEX idx_order_id (order_id),
  INDEX idx_event_type (event_type),
  INDEX idx_event_timestamp (event_timestamp)
);

Testing

PHPUnit Test Suite:

cd wp-plugin/bankpay-plus-woocommerce
composer install
./vendor/bin/phpunit --testsuite unit
./vendor/bin/phpunit --testsuite integration

Code Quality:

composer phpcs          # Check WordPress coding standards
composer phpcbf         # Auto-fix coding standards
composer phpstan        # Static analysis (level 8)

Makefile Commands:

make test-all          # Run all tests
make lint              # Check coding standards
make format            # Auto-fix code style
make phpstan           # Static analysis

Security Considerations

Webhook Signature Verification:

Automatic HMAC SHA-256 verification ensures webhook authenticity. Invalid signatures are rejected with HTTP 403.

Rate Limiting:

  • Webhooks: 50 requests/minute per IP
  • IBAN validation: 10 requests/minute per IP
  • Automatic blocking with exponential backoff

Data Protection:

  • All input sanitized with sanitize_text_field(), sanitize_url()
  • All output escaped with esc_html(), esc_url(), esc_attr()
  • No sensitive data in logs (automatic redaction)
  • GDPR compliant (SHA-256 hashing for personal data)

Documentation

In Plugin Directory:

  • README.md – Quick start and overview
  • DEVELOPER_GUIDE.md – Architecture and contribution guidelines
  • API_INTEGRATION_GUIDE.md – Step-by-step API integration
  • TESTING_GUIDE.md – Unit, integration, and E2E testing
  • WARP.md – AI assistant integration guide

Online Resources:

  • GitHub: https://github.com/k42/WooCommerce
  • API Docs: https://docs.bankpay.plus/api
  • Support: https://wordpress.org/support/plugin/bankpay-open-banking-sepa-payments-for-woocommerce/

Contributing

We welcome contributions! Please see CONTRIBUTING.md in the plugin directory for:

  • Code style guidelines (WordPress + WooCommerce standards)
  • Testing requirements (PHPUnit coverage)
  • Pull request process
  • Security disclosure policy

Found a bug? Report it on the WordPress.org support forum