2020 Release Notes
December 2020
Copy section link
New features
Copy section link
New Transaction Timeline tool added to sandbox accounts
Copy section link
The new Transaction Timeline tool has been added to all sandbox accounts. The Transaction Timeline tool helps newcomers to the Marqeta platform quickly understand the role played by transaction flows in their integration, as well as in the broader payments space. It demonstrates line-by-line how individual transactions impact each other, and how they affect the account balance.
After simulating at least one transaction in your sandbox, access the Transaction Timeline by logging into the Marqeta Dashboard. Enter one of your card tokens in the Transaction Timeline to generate a history of all the transactions completed on that card.
Changed functionality
Copy section link
Increased flexibility for expedited shipping and expedited processing time
Copy section link
Expedited shipping and expedited processing time are configured independently when fulfilling card orders:
-
To specify expedited shipping for card orders, use the
fulfillment.shipping.method
field when creating card products in the/cardproducts
endpoint, when creating cards in the/cards
endpoint, and when creating bulk orders in the/bulkissuance
endpoint. -
To specify expedited processing time—which shortens the time allocated to a card provider to process, pull, personalize, and pack cards into envelopes—set the
expedite
field in the/bulkissuance
and/card
endpoints totrue
. This expedited service is newly available for cards fulfilled by Arroweye Solutions. It was previously available only for Perfect Plastic Printing and IDEMIA.
Simplified shipping options for card fulfillment
Copy section link
When ordering cards from Arroweye Solutions, you can select from the following generic shipping options:
-
LOCAL_MAIL
(not available for bulk orders, tracking not included) -
GROUND
(bulk orders only, tracking included) -
TWO_DAY
(tracking included) -
OVERNIGHT
(tracking included) -
INTERNATIONAL
(tracking included)
These options specify shipping companies and services available from the card provider. They were previously available only from Perfect Plastic Printing and IDEMIA.
For details on which shipping companies and services are offered by each card provider, contact your Marqeta representative.
Notable documentation changes
Copy section link
New look for Marqeta Docs
Copy section link
The Docs site has undergone a top-to-bottom design update that aligns it with Marqeta’s current aesthetic, as seen in the Marqeta Dashboard and elsewhere. The fresh look-and-feel includes design components, colors, fonts, and other elements. The site’s content and organization remain unchanged.
Improved performance of API Explorer widgets
Copy section link
The API Explorer has been updated to use a new custom API widget that is already available in Core API reference pages. The enhanced interactive widget resolves a major issue whereby endpoints with required query parameters did not behave as expected.
November 2020
Copy section link
Changed functionality
Copy section link
3D Secure now generally available
Copy section link
3D Secure is now available for use by all Marqeta customers. The Marqeta 3D Secure platform supports the latest versions of 3D Secure for Visa and Mastercard:
-
For Visa the Marqeta 3D Secure platform supports 3DS 2.2.0
-
For Mastercard the Marqeta 3D Secure platform supports supports 3D Secure 2.1+
For more information about 3D Secure, see https://www.marqeta.com/platform/3d-secure.
New fields for multiple clearings in Visa transactions
Copy section link
For Visa transactions that include multiple clearing events for a single authorization, Marqeta now includes two new fields in the clearing webhooks: multi_clearing_sequence_count
and multi_clearing_sequence_number
.
New fields for contactless point-of-sale transaction exemptions
Copy section link
Gateway JIT and transaction webhook payloads now include two new fields: contactless_exemption_counter
and contactless_exemption_total_amount
.
You can use the information in these fields to notify your users that they are approaching their no-PIN limit for contactless transactions.
New card token field for digital wallet token transitions
Copy section link
Digital wallet token transition webhooks and GET /digitalwallettokentransitions
responses can now include the card_token
field.
This new field contains the UUID of the card associated with the digital wallet token.
This new field is not included by default.
To enable receipt of this field, contact your Marqeta account representative.
ATM transactions now specify the account type
Copy section link
ATM transactions now include the from_account
field in Gateway JIT and transaction webhooks.
This new field specifies the type of account the transaction draws from, such as CHECKING
or SAVINGS
.
You can use this account-specific information to improve your ledger management.
For a full list of account type values, contract your Marqeta account representative.
Support for Gateway JIT account verification requests
Copy section link
You can now send account verification requests or "$0 authorizations" to your JIT gateway to take advantage of your Gateway JIT decisioning flow.
You can approve such verification requests, or decline them using the decline_reason
codes specified on the Gateway JIT Funding Messages API reference page.
New 3D Secure and digital wallet token cardholder OTP notification language support
Copy section link
You can now send your cardholders one-time passcode (OTP) notifications in German and Swedish.
Improved handling of Mastercard Cashback advice transactions
Copy section link
Marqeta now processes Mastercard Cashback financial advice transactions successfully.
Marqeta processes these transactions as pindebit.authorization.clearing
transactions, and includes them in transaction webhooks.
The included amount_to_be_released
field indicates the amount to be released from the previous pindebit.authorization
transaction.
State field now supports more than two characters
Copy section link
The state
field in the /cards
, /cardproducts
, /bulkissuances
and /users
APIs now supports more than two characters, allowing customers to correctly enter non-US addresses.
Velocity control tokens in decline webhooks
Copy section link
In cases where no name is associated with a velocity control, decline webhooks now include the velocity control token in the response.additional_information
field.
Fixed issue with decline transactions webhooks
Copy section link
This release fixes an issue that caused decline transactions webhooks to remain unsent in some cases.
Fixed issue with Maestro transactions
Copy section link
This release fixes an issue that caused some Maestro transactions approved by the Marqeta platform to be declined at the point of sale.
Fixed issue with Gateway JIT balance inquiries
Copy section link
This release fixes an issue with incorrectly formatted Gateway JIT balance inquiries. Balance inquiries formatted as whole numbers rather than decimals are now handled correctly.
October 2020
Copy section link
Changed functionality
Copy section link
Improvements to the Direct Deposit Detail Transaction Report
Copy section link
All direct deposit returns now appear in the Direct Deposit Detail Transaction Report, which is available via the Marqeta Dashboard. This report is a helpful resource when reconciling funds movement and addressing customer concerns.
Notable documentation changes
Copy section link
Redesigned Errors page
Copy section link
The Core API Errors page has been restructured so that it lists all error codes in ascending numerical order. Cross-references linking the Core API and DiVA API Errors pages were added for improved navigation.
The error codes are divided into numeric ranges to make the Errors page easier to load and scroll.
New Card Network Certifications page
Copy section link
The new Card Network Certifications page shows certification information for the most current card network releases, as well as any relevant changes you should take into account.
September 2020
Copy section link
Changed functionality
Copy section link
Better handling of rejected direct deposit transactions
Copy section link
When the Marqeta platform detects that an incoming ACH transaction will cause an account’s balance to exceed the maximum load limit, it now properly creates the corresponding Direct Deposit and Direct Deposit Transition entries.
In addition, the transaction’s status is now set to DECLINED
instead of COMPLETION
.
Together, these enhancements allow for more graceful handling of large transactions and bring greater visibility to certain transactions that were previously rejected by the Marqeta platform.
If your implementation relies on consuming transaction log webhooks, you must integrate this logic change in the transaction status.
Simply put, you must be able to handle DECLINED
in the transaction state object (and webhook state) when a maximum final balance exception occurs, as shown in the examples below.
Previously, these transactions were in the COMPLETION
state, even though they were declined
, which changes existing behavior.
Transaction state object
Copy section link
Webhook
Copy section link
Improved sandbox experience for new users
Copy section link
It is now even faster to get started with the Marqeta platform. New users who sign up receive a sandbox that comes equipped with a predefined card product based on common default values. Working straightaway with a predefined card product enables developers to try out the Marqeta platform’s core technology and successfully complete the Quick Start guide in fewer steps.
Strong Customer Authentication limits for contactless points of sale
Copy section link
Marqeta now supports strong customer authentication (SCA) at contactless points of sale, per European Banking Authority PSD2 Articles 11 and 12. All European customers are required to support these articles. Customers in other regions can also use this feature for additional control over contactless payments.
You can set SCA limits for contactless points of sale at the card product level.
To learn more about this feature, see strong_customer_authentication_limits
in the config.transaction_controls object.
Dynamic Currency Conversion Indicator now included for Visa transactions
Copy section link
The Dynamic Currency Conversion Indicator is now included for Visa transactions in Gateway JIT requests, webhooks, and the transactions API.
This indicator appears in the new dynamic_currency_conversion
field in the currency_conversion.network
object.
If the merchant or ATM acquirer performs currency conversion at a point of sale or at an ATM terminal, this field is set to true
.
Current state of card ignored for credit voucher and online refund transactions
Copy section link
For credit voucher and online refund transactions, the card’s current state is now ignored when receiving refunds. This change allows one-time use cards to receive refunds. Allowing the receipt of refunds on suspended cards can cause additional issues and should only be enabled if you agree to the associated risk.
Fixed Pulse transactions issue
Copy section link
This release fixes an issue that caused some Pulse transactions to be tagged as incremental and not process correctly.
Fixed Zion API issue
Copy section link
This release fixes an issue with Zion API timeouts that caused internal errors.
State field no longer required for international addresses
Copy section link
The state
field in addresses is now optional on the /card
, /user
, and /cardproduct
endpoints.
Notable documentation changes
Copy section link
New developer guide: Configuring 3D Secure OTP Notification Languages
Copy section link
A new developer guide is available that documents how to configure 3D Secure one-time passcode notifications in local languages for your cardholders. See Configuring 3D Secure OTP Notification Languages.
August 2020
Copy section link
Changed functionality
Copy section link
Localized 3DS one-time passcode (OTP) notifications
Copy section link
You can configure 3DS OTP messages for your cardholders in French, Italian, Spanish, Polish, and Czech. The localized language for these messages can be configured at the card product or user level.
To learn more, see the config transaction controls object and the metadata object.
Additional 3DS parameters in Gateway JIT and Authorization webhooks
Copy section link
Gateway JIT and Authorization webhooks now include additional 3DS parameters to help you make better decisions during authorization based on 3DS authentication details:
-
The
cardholder_authentication_data.three_ds_message_version
field contains the message version of the 3DS protocol used during cardholder authentication. -
The
cardholder_authentication_data.authentication_method
field contains the authentication method used for cardholder authentication. -
The
cardholder_authentication_data.authentication_status
field contains the status of the cardholder authentication.
New code for questionable ACH entries
Copy section link
Reason code R17 is an optional new code available to RDFIs.
Use this code when an ACH entry may have been initiated under questionable circumstances.
When you return an entry using R17, you must add "QUESTIONABLE"
to the return’s Addenda Information field.
Learn more here: Direct Deposits (Beta).
More flexible settings for expedited shipping and expedited processing
Copy section link
For card fulfillment, you now set expedited shipping and expedited processing time separately.
To specify expedited processing time, which shortens the time it takes for a card provider to process, pull, personalize, and pack cards into envelopes, set the expedite
field in the /bulkissuance
and /card
endpoints to true
. This expedited service is available only for cards fulfilled by Perfect Plastic Printing and IDEMIA.
To specify expedited shipping for card orders, use the fulfillment.shipping.method
field when creating card products in the /cardproducts
endpoint, when creating cards in the /cards
endpoint, and when creating bulk orders in the /bulkissuance
endpoint.
Simplified shipping options for card fulfillment
Copy section link
When ordering cards from providers Perfect Plastic Printing and IDEMIA, you can now select from the following generic shipping options:
-
LOCAL_MAIL
(not available for bulk orders, tracking not included) -
GROUND
(bulk orders only, tracking included) -
TWO_DAY
(tracking included) -
OVERNIGHT
(tracking included) -
INTERNATIONAL
(tracking included)
These options specify shipping companies and services available from the card provider.
For details on specific mapping of shipping companies and services and card providers, contact your Marqeta representative.
Notable documentation changes
Copy section link
Redesigned API Keys page in the Marqeta Dashboard
Copy section link
The API Keys page has been redesigned to help new developers know what to do with their API keys once they receive them. Improvements include field-level descriptions, a link to the documentation on authentication, and a "Hello, World!" cURL that provides a personalized example of how credentials are used in the console.
Improved Swagger widgets
Copy section link
The interactive elements that enable you to make calls to our API directly from the website have been redesigned with an overall cleaner design and heightened usability. These elements are available in the Core API Quick Start, all API references pages, and the API Explorer.
July 2020
Copy section link
Changed functionality
Copy section link
New reason code to indicate stolen cards
Copy section link
The Marqeta platform now includes separate card transition reason codes for lost and stolen cards. The existing reason code 10 now applies only to lost cards, and the new reason code 23 applies to stolen cards. See Create card transition
New field to indicate mail order/telephone order (MOTO) transactions in webhooks
Copy section link
Authorization, clearing, and Gateway JIT request webhooks now include the transaction_metadata.moto_indicator
field to indicate MOTO transactions.
Possible values for this field are MANUAL
, RECURRING
, INSTALLMENT
, and OTHERS
.
This change applies to version two of the transaction model.
New field to indicate installment transactions in webhooks
Copy section link
Authorization, clearing, and Gateway JIT request webhooks now include the pos.is_installment
field to indicate installment transactions.
Credit voucher and online refund transaction enhancements
Copy section link
You can now ignore the suspended state of a card for credit voucher and online refund transactions. Be aware that allowing suspended cards to receive funds entails the associated risk of causing additional issues.
Acquiring reference identifier updated for Visa clearing webhooks
Copy section link
For Visa transactions, the acquiring_reference_id
field now uses the six-digit acquirer reference identifier in clearing webhooks.
Updated handling of incremental authorizations for Mastercard
Copy section link
For Mastercard transactions, some merchants send incremental authorizations after the original authorization was cleared or reversed. These incremental authorizations could not be cleared or expired, which negatively impacted cardholders. The Marqeta platform now processes such transactions as standard authorizations that are cleared or expired based on the actions of the merchant.
Offline PIN script issue fixed
Copy section link
An issue occasionally caused an incorrect reset of the offline PIN script flag, which then forced cardholders to reset their PIN multiple times. This issue is fixed in this release.
Zero-amount authorization with cashback issue fixed
Copy section link
Some zero-amount authorizations with cashback amounts did not work correctly, impacting the cardholders balance but not allowing them to get cash. This issue is fixed in this release.
Bulk order shipping options clarified
Copy section link
USPS_Regular
is no longer available for bulk card orders.
In the past, you could select USPS_Regular
, and this selection would automatically convert to FedEx_Expedited
to support tracking information for bulk orders.
June 2020
Copy section link
Changed functionality
Copy section link
Improved handling of mismatched authorizations and clearings
Copy section link
Transactions for identical amounts at the same merchant occasionally are mismatched with their reference identifiers. This enhancement provides additional data to help you determine the correct authorization for a given transaction.
Missing pin_present
field added to Swagger
Copy section link
The pin_present
is now included in Swagger with this release.
Clearing webhooks included incorrect data in the original_amount
field for some Visa transactions
Copy section link
Clearing webhooks for Visa transactions now include the correct data in the original_amount
field of the currency_conversion
object.
Clearing webhooks included incorrect data for cross-border issuer fees for some Visa transactions
Copy section link
Clearing webhooks for Visa transactions now include the correct data for the CROSS_BORDER_ISSUER_FEE
.
Notable documentation changes
Copy section link
Wording change: "master access token" renamed "admin access token"
Copy section link
This change is implemented throughout Marqeta documentation.
May 2020
Copy section link
Changed functionality
Copy section link
New decline_reason
field in Gateway JIT response
Copy section link
The decline_reason
field lets you specify the reason why a Gateway JIT Funding transaction was rejected.
This field is optional.
If you do not include this field in your Gateway JIT Funding response, the transaction is declined with the reason "insufficient funds."
The new decline reasons are mapped to the relevant card network response codes.
See Gateway JIT Funding Messages.
New JIT Funding transaction response codes
Copy section link
Several new JIT Funding codes, available as transaction response codes, provide more clarity about JIT Funding decisions for transactions. See transaction response codes.
Added support for Compressed AVS Data for Mastercard AVS processing
Copy section link
Compressed AVS data is commonly used by United Kingdom and European Union merchants during tokenization.
New pin_present
field in transaction model V2
Copy section link
This field indicates whether a PIN was entered during a transaction, and appears in Gateway JIT calls, transaction webhooks, and GET /transactions
.
New notification_email
field in user.metadata
Copy section link
This email address can receive one-time passcodes for 3DS authentication.
It is useful when the user.email
field is null or not set.
Send a PUT
or POST
request to /users
to set this metadata.
Visa chargeback representment webhooks original amount issue resolved
Copy section link
Visa chargeback representment webhooks no longer include incorrect original amounts in the currency_conversion
object.
Gateway JIT and transaction webhooks no longer receive cardholder_authentication_data
Copy section link
The cardholder_authentication_data
object in Gateway JIT and transaction webhooks was being sent unnecessarily for tokenized transactions.
This object will now be sent only for transactions where 3DS authentication is attempted.
Easier direct deposit return handling
Copy section link
You can now return direct deposits directly from the cardholder transaction table in apps.marqeta.com, which simplifies the direct deposit returns workflow. To return a transaction, choose an applicable return reason code from the list, then enter a description.
Notable documentation changes
Copy section link
New developer guide for personal identification numbers (PINs)
Copy section link
This new guide covers resetting the PIN retry counter and modifying a program’s PIN retry limit value. It also includes a PIN retry flow that explains how to intervene when a cardholder’s card has been locked out after reaching the maximum number of unsuccessful PIN retries. For details, see About Personal Identification Numbers.
New API reference page for the /acceptedcountries
endpoint
Copy section link
See Accepted Countries.
New documentation for Visa Cases (Beta)
Copy section link
For guidance and reference information about the Cases API for Visa, see Managing Visa Cases (Beta) Developer Guide and Cases (Visa) (Beta) API Reference.
April 2020
Copy section link
Changed functionality
Copy section link
For the accepted_countries
endpoint, POST
and PUT
are newly restricted to Admin users only
Copy section link
Other roles can retrieve the list of accepted countries, but cannot change its contents.
With this change, the API Explorer will no longer show POST
and PUT
calls for this endpoint.
Webhooks provide spend control details for declined transactions
Copy section link
You can configure the Marqeta platform to send a webhook whenever a transaction is declined.
If a spend control is responsible for declining the transaction, the webhook sent now includes the additional_information
field.
This field contains the name of the spend control responsible for the transaction being declined.
To learn more, read Controlling Spending.
Last four digits of PAN displayed in digital wallets during PAN swap functions
Copy section link
The Mobile Wallet UI now displays the last four digits of the card PAN during PAN swap functions for Mastercard. Previously, the PAN swap was occurring successfully, but was not reflected in the Mobile Wallet UI.
Improved support for long business names
Copy section link
Long business names (up to 255 characters) are now supported when creating or updating a business' payment card information. To learn more, read Businesses.
Notable documentation changes
Copy section link
New and updated sections in the Ledger Management with JIT Funding guide
Copy section link
-
New section JIT Funding message types describes how the JIT Funding message types relate to your ledger.
-
New section Balances in Gateway JIT Funding responses explains how to send information from your ledger in response to a balance inquiry.
-
New section Example chargebacks scenario shows sample webhook notifications as they would appear in a chargeback scenario.
-
The Ledger-impacting transaction events section added a new table column indicating whether the transaction event was sent in a temporary or final transaction message.
March 2020
Copy section link
New features
Copy section link
Visa and Mastercard have added new token requestor names
Copy section link
Visa and Mastercard have added a number of new token requestors as a response to increased tokenization by e-commerce merchants.
These token requestors have unique token requestor IDs and use unknown
as the token requestor name.
We are currently creating specific, more accurate names for approximately 200 new token requestors on the Marqeta platform.
For details, see the token_service_provider
object of GET /digitalwallettokens/{token}
.
Because the list of token requestor names may change, we recommend not hardcoding against specific values for token requestor names.
Financial advice authorization clearing events include amount to be released
Copy section link
Financial advice authorization.clearing
transaction events include a new field, amount_to_be_released
. This field is useful for automated fuel dispenser (AFD) transactions, where the authorization may be for a fixed amount higher than the actual amount cleared.
You can use this field to update your ledgers to reflect the actual amount more quickly, then release the excess funds back to your customer. For details, see Transaction Events.
Velocity controls supported for dual-message withdrawal transactions
Copy section link
Velocity controls that apply to cash withdrawals now support dual-message withdrawal transactions, which are common in the European Union.
Previously, any velocity controls that excluded purchases from consideration also did not limit cash withdrawals. For details, see Controlling Spending.
Changed functionality
Copy section link
State of digital wallet tokens reflected in wallets
Copy section link
Digital wallets now update to reflect the status of their digital wallet tokens when a token is suspended or resumed. Previously, suspended tokens appeared active, but their transactions would decline.
Suspended tokens now appear as unavailable for payment in their digital wallets.
Notable documentation changes
Copy section link
New ledger management developer guide
Copy section link
The Ledger Management for JIT Funding guide describes how to use information contained in JIT messages to help manage your account ledgers, which transaction events impact the ledger, and best practices for ledger management.
Newly documented fields in transaction response model
Copy section link
Transaction type authorization.clearing
, following a financial advice, returns these fields:
Name | Description |
---|---|
|
Amount to release following a financial advice. |
|
Object containing the amount and token of the preceding authorization transaction. |
See the Transactions API reference.
Conditionally returned fields explained
Copy section link
Core and DiVA API reference pages now describe the conditions under which the API returns all fields documented as "Conditionally returned."