Discover answers to some commonly asked questions.

Wire Funding

Is Enhanced Due Diligence triggered for large transaction amounts?

Yes, it is triggered at $500,000.

Is there a minimum wire amount?


What are the wire Fees?

Please contact Sales to discuss.

What if the name on the wire differs from the name on the user account?

The wire will be rejected.

What if no wire reference code is sent?

It will take longer to book the wire and may result in rejecting the wire.

Is there a wire reject fee?



What is the benefit of integrating with the new KYC workflow?

This enhanced process extends the opportunity for flagged customers to rectify any issue with their KYC information directly - leading to a streamlined KYC process in which accounts can be screened and opened faster, with a higher chance of success. This is done through a new document verification process conducted via a mobile web application.

How will I be notified if a customer is required to go through document verification?

Clients who have completed their webhook integration with Bakkt will automatically receive a webhook event with a reason code of DOCUMENT_VERIFICATION if a customer profile was flagged during their screening. This event will also contain a verificationURL with the mobile webApp link for the customer to upload an ID document and a facial scan. It will also contain a verificationUrlExpiry denoting when the URL will expire. Clients are responsible for prompting the user with the URL during their onboarding process (when required) and retrieving a new URL for the customer when the expiration has been met (if the user has not already completed enrollment).

What does integration look like? How much effort is involved?

New Clients

New clients that have not yet integrated with Bakkt will need to provide their webhook URLs to the Bakkt SRE/Platform team via Slack. Bakkt will then handle setup for the client to receive customer status webhook events.

Existing Clients

Clients who have already been subscribed to Bakkt Marketplace webhook events do not require any further action to receive status event updates, however; they will still need to consume the new reason codes for DOCUMENT_VERIFICATION, PENDING_REVIEW, RISK_KYC and RISK_OFAC. Clients will also need to ensure they are able to consume the new verificationURL and verificationUrlExpiry fields in the PARTY_EVENT webhook.

Managing Customer Communications

If a client decides to manage the document verification communication to their customers, the client will need to ensure that the customer is prompted with the verificationURL when required during onboarding. The customer should have access to an active URL until the client receives a subsequent webhook event indicating a successful or failed verification process.

In the event the customer has not completed their enrollment process and the URL has expired, clients will also need to integrate with the link retrieval API to refresh expired verificationURLs for the customer.

What if I don’t want to manage document verification communications with customers?

If clients do not want to manage the customer communication, Bakkt also supports SMS delivery of the verificationURL directly from the vendor to the customer. In order to be eligible for this option, clients must ensure they adhere to E.164 formatting for customer phone numbers​.

This is configurable at any time should a client want to switch from one to another. In these two methods, the client can still expect to receive the webhook event, but the customer communication will be handled depending on what option was chosen.

How long is the verificationURL active?

The verificationURL has a set TTL (time-to-live). This is defaulted to 72 hours, but is subject to change at the discretion of the Bakkt Compliance Team. Clients will be notified via Slack of any upcoming changes to the TTL.

In the event a customer has let too much time pass, past the point of URL expiry, the client will need to retrieve a new URL for the customer via the Retrieve KYC Document Verification Details API in the Retrieving Information section.

If the client has opted for SMS delivery of the URL directly to the customer, a new URL will automatically be sent to the customer whenever they click on the expired URL.

Bakkt will only allow up to 3 URL expirations. If the customer has not successfully completed document verification, the account will remain suspended. If a client wishes to appeal this suspension, they may reach out via Slack to the Bakkt SRE/Platform team.

Can a client request a verificationURL after the third expiration?

A new verificationURL cannot be provided after the third expiration. Instead, if a client inquires about a customer account that has passed the threshold of allowed refreshes, the Bakkt Compliance Team will manually review the account. The client may be requested to provide additional documentation from the customer to assist in the review. If a client wishes to appeal a suspension, they may reach out via Slack to the Bakkt SRE/Platform team.

Can a user still trade or fund their account if they are in the document verification phase?

No, accounts are not considered active until they have successfully passed the KYC process. Accounts that enter document verification are considered inactive until screening is complete.

What documents are supported in the document verification process?

The process supports Passports, Driver’s Licenses, and Identification Cards. However, support varies per jurisdiction. Clients are advised to reach out to the Bakkt SRE/Platform for specifics on what jurisdictions (especially outside the United States) are supported.

What are next steps for customers that fail the KYC process?

It is rare for a customer’s account to be manually activated after failing the KYC process in a true-positive scenario. However, if clients sill want to reach out to Bakkt Compliance for further guidance regarding the specific KYC failure, they may do so via Slack.

How long do I have to integrate with this new workflow? What happens if I choose to not integrate?

Clients will typically have 3 months from the initial communications to integrate with the new workflow. If a client chooses to not integrate, customer accounts that are flagged for document verification may remain suspended unless the client opts for SMS delivery of the verificationURL to the customer directly. Clients should reach out to their Bakkt via Slack for further clarifications on their specific timelines for integration.

Can I submit documents that I already collect?

Clients should continue to provide non-ID documents via the Document API (SSN cards, bank statements, etc.) as the Bakkt Compliance Team regularly references these to verify customer details. However, ID documents like passports, driver’s licenses, and other ID cards should only be provided via the customer directly when uploading to Socure.


What languages are supported for the mobile web application that is displayed to our customers for document verification?

Document verification is currently supported in English, Spanish, French, and Brazilian Portuguese. Support for simplified Chinese is in progress. If a client requires additional language support, they should reach out to Bakkt via Slack for more information on when/if that language can be added.