FAQ
Wire Funding
Is Enhanced Due Diligence triggered for large transaction amounts?
Yes, it is triggered at $500,000.
Is there a minimum wire amount?
No.
What are the wire fees?
Please contact Sales at [email protected] 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?
No.
KYC
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?
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.
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?
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 still 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 contact 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.
Languages
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.
Tax (1099-DA) Reporting
Key Form: 1099-DA
Starting January 1, 2025, the IRS has implemented reporting requirements for digital asset brokers. The Form 1099-DA (Digital Asset Proceeds From Broker Transactions) is a new tax form specifically for digital assets.
- What it reports: It primarily tracks Gross Proceeds and cost basis from the sale or exchange of digital assets.
- Who receives it: Any user who sold, exchanged, or disposed of digital assets on the Bakkt platform.
- Filing: Bakkt sends this form directly to customers and files it with the IRS.
What Transactions are Reported?
Bakkt reports taxable disposals only. This means the 1099-DA will reflect:
- Sales of digital assets for fiat (e.g., selling BTC for USD).
- Exchanges of one digital asset for another (e.g., swapping BTC for ETH).
- Payments or redemptions involving digital assets.
Note: Basic deposits and withdrawals (moving your own digital assets between wallets or platforms) are generally not reported as sales on the 1099-DA, as they are not taxable disposals.
Cost Basis & Accounting Methods
Calculating tax liability requires knowing your Cost Basis (the original purchase price plus fees).
Tax Lot Methodologies
Your "tax lot" determines which specific units are considered "sold" first when you have multiple purchases. Bakkt is launching an API in April 2026 to allow customers to select their preferred method for 2026 trading activity:
- FIFO (First-In, First-Out): The oldest assets are sold first.
- HIFO (Highest-In, First-Out): The most expensive assets are sold first, typically minimizing quick gains.
- LIFO (Last-In, First-Out): The most recently acquired assets are sold first.
Note: Not all brokers allow customers to choose their reporting method. If a choice isn't offered, tax forms will be calculated using the FIFO method as the industry standard default.
"Covered" vs. "Non-Covered" Assets
- Covered Assets: Assets purchased on the Bakkt platform after the IRS effective dates. For these transactions, Bakkt will eventually report both proceeds and cost basis.
- Non-Covered Assets: Any assets transferred into Bakkt from an external wallet or another exchange. Since Bakkt does not know what the user originally paid for these, the cost basis will be blank or null.
- Customer Responsibility: Customers must track and report the cost basis for non-covered assets using their own records or consumer-facing tools like CoinTracker.
Integration & Delivery
Bakkt has partnered with a third-party vendor to facilitate the generation and delivery of these forms to customers.
- Separate Forms: If you have digital asset activity outside of Bakkt (such as "Earn" products or other exchanges), you will likely receive multiple 1099-DA forms.
- No Combined Filing: Due to regulatory liability, Bakkt does not "outsource" its reporting to be combined with third-party event forms. Customers should provide all 1099-DAs to a tax professional to be reconciled on Form 8949 and Schedule D.
Important Dates
- January 1, 2025: New IRS disposition reporting rules go into effect.
- January 1, 2026: New IRS cost basis reporting rules go into effect for the 2026 tax year.
- February 2026: First 1099-DA forms for the 2025 tax year will be issued.
- April 2026: Bakkt's Tax Methodology Selection API goes live.
Updated 3 days ago
