Week Ending 2026-07-24

🚀 Now in Beta: Unified Enrollment (card + bank feed) — enroll a card and connect a bank account in a single SDK flow, with a cardsubscription.updated event when a second source is layered onto an existing subscription. In limited availability / beta — request access via your CSM.

🚀 Improved Beta: graded enrollment eligibilityPOST /enrollment-methods returns a graded bulkLikelihood + singleEligible so you can route a card to the right enrollment path. Callable by any account.

🚀 Now live: Enriched transaction webhook — the enriched transaction payload (_embedded.messages[]) is now generally available to every customer.


Production

POST /enrollment-methods (beta)

  • Enrollment-method lookups now return a graded bulk-enrollment score, not just a method list. Alongside availableEnrollmentMethods, the response carries bulkLikelihoodproven · high · medium · low · none — for how likely network-bulk enrollment is to succeed for that BIN, and singleEligible (boolean) for whether cardholder-single enrollment is supported. A country-coverage restriction forces bulkLikelihood: none. Use the graded value to decide whether to route a card to the bulk path or prompt for single-card enrollment, rather than reading "bulk is listed" as a yes/no. The endpoint remains in beta — please provide feedback as you leverage this endpoint and we'll continually make improvements to enhance your customer onboarding workflows.

GET /bin-lookup

  • BIN lookups now return two additional card-classification fields. cardCategory (CONSUMER · BUSINESS · CORPORATE · FLEET · PURCHASING · GIFT · PREPAID · SPECIALTY · UNKNOWN, nullable) separates fleet, purchasing and gift cards that the existing type reports only as COMMERCIAL or CORPORATE; cardFundingType (CREDIT · CHARGE · DEBIT · PREPAID · GIFT · UNKNOWN, nullable) separates charge cards that fundingType collapses into CREDIT. Both are also populated for many BINs where type is absent. Treat UNKNOWN as "not determined", not as "consumer". This information is additive only.

transaction.updated webhook

  • You'll receive fewer transaction.updated webhooks, and every one you do receive carries a real change. Messages that restated a known transaction such as a duplicate message were publishing an updated event whose payload was byte-identical to the last one received. These now no longer send to unnecessary triggers to your system that you do not have to act on. Any change to the follow fields will always trigger an updated event: acceptor.city, acceptor.country, acceptor.mcc, acceptor.state, accountId, cardId, network, subaccountId, id. createdAt, descriptor, status, transactionType, transactionOccurrenceDate, transactionCurrency transactionHoldAmount, transactionSettledAmountcardholderBillingCurrency, cardholderBillingHoldAmount,
    cardholderBillingSettledAmount.

Unified Enrollment SDK — card + bank in one flow (beta)

  • You can now enroll a card and connect a bank account in a single unified flow, in beta. The Unified Enrollment SDK embeds both rails (card enrollment and bank linking) in one hosted flow, and card↔bank subscriptions are now unified: cardsubscription.created establishes identity at the first source, and a new cardsubscription.updated fires when a second source is layered on — card-then-bank (a card subscription gains bankAccountId + a bankAccount link) or bank-then-card (a bank-feed subscription is upgraded in place to cardholder-single, keeping its bankAccountId, with no second created). Beta / limited availability — request access via your CSM; under active development meaning data contracts are expected to change.

Visa file-based bulk-enrollment

  • networkReference now accepts the full 4-segment RPIC, not just the 3-segment PIC. On feed creation (POST /network-bulk-feeds with type: VCF) and on VCF network links, networkReference accepts either ProcessorId_IssuerId_CompanyId or the full RegionId_ProcessorId_IssuerId_CompanyId reference you were issued; the region segment is stripped and the link is stored in the 3-segment form incoming VCF files are matched on.

Sandbox

POST /network-bulk-feeds

  • cardCount replaces newCards for sandbox starter data; newCards is now deprecated. cardCount (integer, 1–20, default 5) is the primary field and matches the field of the same name on the simulate-ingestion endpoints. newCards still works as a deprecated alias with identical behavior; when both are sent, cardCount wins. Pleas move new integrations to cardCount.

Unified Enrollment — bank linking in sandbox (beta)

  • The sandbox supports the full bank rail of Unified Enrollment. On a sandbox-enabled subaccount, bank links are created against Bank enrollment Sandbox (user_good / pass_good fixtures), emitting bank-linked / card-enrolled SDK events and cardsubscription.created webhooks with synthetic transactions — so you can exercise the unified card+bank flow end-to-end before going live.