Skip to content

Backpack Wallet QR scanner does not include reference account from Solana Pay URI in transactions #4369

@northmz

Description

@northmz

Hello team,

We’ve found an issue with Backpack Wallet’s QR code scanner when testing Solana payment flows.

🐛 Bug Description

When scanning a Solana payment QR code that includes a reference parameter, Backpack does not include the reference account in the final transaction. This makes transaction detection impossible, since most payment processors (including ours, Paymento) rely on getSignaturesForAddress(reference) for order reconciliation.

✅ Expected Behavior

When a user scans a Solana payment QR code with a reference in the URI, Backpack should always include the reference account(s) in the transaction’s account list.

🔍 Actual Behavior

Phantom and Solflare correctly include the reference account when scanning the same QR code. Backpack’s QR scanner omits the reference account entirely.

🔁 Steps to Reproduce

  • Generate a Solana Pay QR code with a URI like:
  • solana:<merchant_pubkey>?amount=0.1&reference=<ref_pubkey>
  • Scan the QR code using Backpack Wallet.
  • Approve and send the payment.

Fetch the transaction via RPC and inspect transaction.message.accountKeys. The reference key is missing.

⚡ Impact

This prevents from reliably detecting payments made with Backpack via QR codes, making Backpack incompatible with Solana Pay integrations that depend on reference-based tracking.

💡 Suggested Fix

Ensure that Backpack’s QR scanner always parses and includes the reference account(s) from Solana Pay URIs when constructing the transaction.

Thanks for reviewing this, I can share example transaction IDs if helpful.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions