BankPay enables direct bank-to-bank transfers through Open Banking (Europe) and ACH (USA). Customers authenticate with their bank and authorize the payment directly.
Availability
BankPay is available in all browsers when bank payment credentials are configured in your Orchestra account.
const available = await engine.checkAvailability();
// Includes "BankPay" if configured
Regional Support
| Region | Method | Description |
|---|
| Europe | Open Banking | PSD2-compliant direct bank transfers |
| USA | ACH | Automated Clearing House transfers |
<div id="bank-button"></div>
engine.payBy(
[{ name: 'BankPay', domEntitySelector: '#bank-button' }],
handleResult,
undefined
);
How It Works
- Customer clicks the bank payment button
- Library displays bank selection interface
- Customer selects their bank
- Customer is redirected to their bank’s authentication
- Customer authorizes the payment
- Bank initiates the transfer
- Result is returned to your callback
Supported Operations
| Operation | Supported |
|---|
CHARGE | Yes |
TOKENIZE | No |
CHARGE_AND_TOKENIZE | No |
Bank transfers only support charge operations. Tokenization is not available for bank payments.
Result Handling
Bank payments are processed directly (not through a PSP), so results appear in directChargeResults:
const [data] = engine.parseResultToken(result.token);
if (data.directChargeResults) {
console.log('Success:', data.directChargeResults.success);
console.log('Message:', data.directChargeResults.message);
console.log('Data:', data.directChargeResults.data);
}
Configuration
Bank payments require specific configuration in your Orchestra account. Contact support to enable Open Banking or ACH for your account.
When creating a session for bank payments:
// Server-side session creation
const session = {
operation: 'CHARGE', // Only CHARGE is supported
amount: 100.00,
currencyCode: 'EUR', // Or 'USD' for ACH
mode: 'LIVE'
// No paymentGatewayAccountId needed for bank transfers
};
Settlement Time
Bank transfers are not instant:
| Method | Typical Settlement |
|---|
| Open Banking (SEPA) | 1-2 business days |
| ACH | 2-3 business days |
Unlike card payments, bank transfers may not settle immediately. Your application should handle pending payment states.