Skip to main content
Once you’ve connected a user’s credit cards, you can stream real-time transaction data for spend management, expense categorization, and budget tracking. This guide also covers manual card entry for networks where automatic discovery isn’t available.

Transaction Stream

Method streams real-time transaction data for connected credit card accounts, including both authorization events (when a purchase is made) and settlement events (when the transaction clears). This enables features like spend categorization, transaction alerts, budget tracking, and detailed account activity views.

Listing Transactions

Retrieve transactions for any connected credit card account. Here are Emily’s recent transactions on her Citi Double Cash card (acc_XtKTpHLGhD9Qn):
curl "https://production.methodfi.com/accounts/acc_XtKTpHLGhD9Qn/transactions" \
  -X GET \
  -H "Method-Version: 2025-12-01" \
  -H "Authorization: Bearer sk_WyZEWVfTcH7GqmPzUPk65Vjc"
{
  "data": [
    {
      "id": "txn_t73AdHRFYwhT9",
      "account_id": "acc_XtKTpHLGhD9Qn",
      "status": "posted",
      "descriptor": "SQ *STARBUCKS STORE 12345",
      "merchant": {
        "name": "Starbucks",
        "logo": "https://static.methodfi.com/merchants/starbucks.png"
      },
      "merchant_category_code": "5814",
      "amount": 575,
      "auth_amount": 575,
      "currency_code": "USD",
      "transaction_amount": 575,
      "transaction_auth_amount": 575,
      "transaction_currency_code": "USD",
      "transacted_at": "2025-12-08T13:22:06.000Z",
      "posted_at": "2025-12-09T05:00:00.000Z",
      "voided_at": null,
      "original_txn_id": null,
      "created_at": "2025-12-09T03:54:29.283Z",
      "updated_at": "2025-12-09T04:04:39.200Z"
    },
    {
      "id": "txn_Hk4mNQpZW8vRx",
      "account_id": "acc_XtKTpHLGhD9Qn",
      "status": "posted",
      "descriptor": "WHOLE FOODS MARKET #10247",
      "merchant": {
        "name": "Whole Foods Market",
        "logo": "https://static.methodfi.com/merchants/whole_foods.png"
      },
      "merchant_category_code": "5411",
      "amount": 8723,
      "auth_amount": 8723,
      "currency_code": "USD",
      "transaction_amount": 8723,
      "transaction_auth_amount": 8723,
      "transaction_currency_code": "USD",
      "transacted_at": "2025-12-07T18:45:12.000Z",
      "posted_at": "2025-12-08T05:00:00.000Z",
      "voided_at": null,
      "original_txn_id": null,
      "created_at": "2025-12-08T03:12:44.283Z",
      "updated_at": "2025-12-08T04:22:11.200Z"
    },
    {
      "id": "txn_QwLp3RcTjXn7m",
      "account_id": "acc_XtKTpHLGhD9Qn",
      "status": "posted",
      "descriptor": "UBER *TRIP HELP.UBER.COM",
      "merchant": {
        "name": "Uber",
        "logo": "https://static.methodfi.com/merchants/uber.png"
      },
      "merchant_category_code": "4121",
      "amount": 2450,
      "auth_amount": 2450,
      "currency_code": "USD",
      "transaction_amount": 2450,
      "transaction_auth_amount": 2450,
      "transaction_currency_code": "USD",
      "transacted_at": "2025-12-06T21:10:33.000Z",
      "posted_at": "2025-12-07T05:00:00.000Z",
      "voided_at": null,
      "original_txn_id": null,
      "created_at": "2025-12-07T03:41:18.283Z",
      "updated_at": "2025-12-07T04:51:22.200Z"
    },
    {
      "id": "txn_Vy8nPfW2mKqRd",
      "account_id": "acc_XtKTpHLGhD9Qn",
      "status": "posted",
      "descriptor": "NETFLIX.COM",
      "merchant": {
        "name": "Netflix",
        "logo": "https://static.methodfi.com/merchants/netflix.png"
      },
      "merchant_category_code": "4899",
      "amount": 1599,
      "auth_amount": 1599,
      "currency_code": "USD",
      "transaction_amount": 1599,
      "transaction_auth_amount": 1599,
      "transaction_currency_code": "USD",
      "transacted_at": "2025-12-01T00:00:00.000Z",
      "posted_at": "2025-12-02T05:00:00.000Z",
      "voided_at": null,
      "original_txn_id": null,
      "created_at": "2025-12-02T03:22:15.283Z",
      "updated_at": "2025-12-02T04:32:08.200Z"
    }
  ]
}
Each transaction includes the merchant name and logo, merchant_category_code for categorization, amount in cents, and timestamps for when the transaction was authorized (transacted_at) and settled (posted_at).

Transaction Subscriptions

To receive continuous transaction updates as they happen, enroll the account in a transaction subscription. This triggers webhooks for every new authorization and settlement event.
curl https://production.methodfi.com/accounts/acc_XtKTpHLGhD9Qn/subscriptions \
  -X POST \
  -H "Method-Version: 2025-12-01" \
  -H "Authorization: Bearer sk_WyZEWVfTcH7GqmPzUPk65Vjc" \
  -H "Content-Type: application/json" \
  -d '{
    "enroll": "transaction"
  }'
{
  "id": "sub_Dk7tLmVxQpR9w",
  "name": "transaction",
  "status": "active",
  "payload": null,
  "latest_request_id": null,
  "created_at": "2025-12-10T14:50:33.951Z",
  "updated_at": "2025-12-10T14:50:33.951Z"
}
Once enrolled, you’ll receive transaction.created and transaction.updated webhook events as transactions flow through the account.
Transaction streaming is available for Visa and Mastercard credit cards only. For other networks, see the Manual Card Entry section below.

Manual Card Entry

Some card networks and issuers are not available through automatic discovery via Connect. When a user’s card can’t be discovered automatically — such as Amex, Apple Card, Barclays, or Navy Federal — you can use manual card entry to bring those cards into your system.

When Manual Entry Is Needed

Automatic discovery via Connect works across most major issuers, but certain cards require the user to manually provide their card details:
  • American Express cards
  • Apple Card
  • Barclays cards
  • Navy Federal Credit Union cards

Opal Card Connect for Manual Entry

Opal’s Card Connect mode handles this gracefully. When a user’s card can’t be discovered automatically, Opal prompts the user to manually enter their PAN (card number) and CVV. This keeps sensitive card data out of your systems while still enabling the full range of Method products on that account.

Opal Card Connect

Full documentation for Opal’s Card Connect mode, including manual PAN + CVV entry flows.

Account Verification for Manual Cards

When a card is entered manually, it must be verified before it can be used for transactions or payment instruments. Method supports multiple credit card verification methods including standard, pre-auth, and network-based verification.

Tokenizing Manually-Entered Cards

Once a manually-entered card is verified, you can create a Payment Instrument to tokenize the credentials — the same flow as with auto-discovered cards:
curl https://production.methodfi.com/accounts/acc_4m9amk4KFiaQX/payment_instruments \
  -X POST \
  -H "Method-Version: 2025-12-01" \
  -H "Authorization: Bearer sk_WyZEWVfTcH7GqmPzUPk65Vjc" \
  -H "Content-Type: application/json" \
  -d '{
    "type": "card"
  }'
{
  "success": true,
  "data": {
    "id": "pmt_inst_Rk3mHvQw7LpNx",
    "account_id": "acc_4m9amk4KFiaQX",
    "type": "card",
    "card": {
      "number": "3742454895001287",
      "exp_month": "06",
      "exp_year": "2027",
      "billing_zip_code": "90028"
    },
    "network_token": null,
    "inbound_achwire_payment": null,
    "chargeable": true,
    "status": "completed",
    "error": null,
    "created_at": "2025-12-10T15:02:44.039Z",
    "updated_at": "2025-12-10T15:02:44.039Z"
  },
  "message": null
}
Payment Instruments is a gated product that requires approval. Contact your Method representative to enable access.

What’s Next

Card Linking & Checkout

Card brand enrichment, payment instruments, and card-on-file flows.

Transactions API Reference

Full API documentation for Transactions.

Subscriptions API Reference

Full API documentation for Account Subscriptions.

Payment Instruments API Reference

Full API documentation for Payment Instruments.