Docs

Bank Pay-ins

Eligible hosted invoices can offer ACH debit, ACH transfer and wire alongside their other enabled payment methods. Ask your platform operator to confirm the methods available for your merchant and environment, then share the issued invoice payment URL. This is a hosted invoice workflow, separate from the Payment Intents API and JavaScript SDK.

Customer experience

  • ACH debit: the customer enters bank details and affirmatively accepts the displayed one-time debit authorization before submitting.
  • ACH transfer or wire: the customer sends funds from their own bank using the exact receiving account, rail, reference and total displayed on the page. Transfer rails can have different fees and instructions.

Keep the invoice URL so the customer can return to its pending status and instructions. Once a bank attempt is pending, do not start a competing payment. Use the cancellation choice only for a pending transfer whose funds have never been sent; it is not a recall of money already sent or an ACH debit reversal.

Payment confirmation

Receiving instructions or submitting a debit does not mean the invoice is paid. Confirm the invoice/payment result from your merchant backend before fulfilling the order. Matching funds, returns and holds are distinct outcomes.

Merchant teams using the private direct integration can follow Bank Pay-ins and Invoices for the server contract. Keep merchant secrets out of customer pages and invoice URLs. For token-funded invoices, see USDC pay-ins.

© securepayAPI · Built with Markdoc