Auto-fund BML account for Tap to Pay / Scan to Pay #61

Open
opened 2026-10-02 20:44:53 +00:00 by quillfires · 1 comment
Collaborator

Description

When using Tap to Pay or Scan to Pay, if the BML account associated with the selected card does not have enough funds for the payment, automatically transfer the required amount from another configured account that has sufficient funds, then continue with the payment.

The user should not have to manually perform the transfer first.

Expected flow

  1. User selects Tap to Pay or Scan to Pay.

  2. The app checks the balance of the BML account associated with the card.

  3. If the balance is insufficient:

    • Check the accounts configured as funding sources.
    • Select an account with sufficient available funds.
    • Transfer the required amount to the associated BML account.
  4. Once the transfer succeeds, continue with the original payment.

  5. Use the stored TOTP seed for the required transaction verification.

  6. Ask the user for biometric or PIN verification only once for the entire operation, rather than separately for the transfer and payment.

Settings

Add a setting to configure which accounts may be used as automatic funding sources and, where multiple eligible accounts are available, allow the user to choose the preferred account/order.

Notes

  • Only transfer the amount required to complete the payment.
  • Do not initiate the payment until the required transfer has successfully completed.
  • If no configured account has sufficient funds, fall back to the existing insufficient-balance behavior.
  • The entire transfer + payment flow should feel like a single user-initiated transaction.
## Description When using **Tap to Pay** or **Scan to Pay**, if the BML account associated with the selected card does not have enough funds for the payment, automatically transfer the required amount from another configured account that has sufficient funds, then continue with the payment. The user should not have to manually perform the transfer first. ### Expected flow 1. User selects **Tap to Pay** or **Scan to Pay**. 2. The app checks the balance of the BML account associated with the card. 3. If the balance is insufficient: * Check the accounts configured as funding sources. * Select an account with sufficient available funds. * Transfer the required amount to the associated BML account. 4. Once the transfer succeeds, continue with the original payment. 5. Use the stored **TOTP seed** for the required transaction verification. 6. Ask the user for **biometric or PIN verification only once** for the entire operation, rather than separately for the transfer and payment. ### Settings Add a setting to configure which accounts may be used as automatic funding sources and, where multiple eligible accounts are available, allow the user to choose the preferred account/order. ### Notes * Only transfer the amount required to complete the payment. * Do not initiate the payment until the required transfer has successfully completed. * If no configured account has sufficient funds, fall back to the existing insufficient-balance behavior. * The entire transfer + payment flow should feel like a single user-initiated transaction.
Owner

BML api dont tell primary account associated with debit cards, so we need to implement a way for user to match card with primary account as well

BML api dont tell primary account associated with debit cards, so we need to implement a way for user to match card with primary account as well
Sign in to join this conversation.
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: thijooree/android#61