---
title: "Register consent for paperless delivery of tax forms (US only)"
description: "Check and register user-consent preferences for electronic delivery of US tax forms."
url: "https://docs.adyen.com/marketplaces/us-tax-forms-edelivery-consent"
source_url: "https://docs.adyen.com/marketplaces/us-tax-forms-edelivery-consent.md"
canonical: "https://docs.adyen.com/marketplaces/us-tax-forms-edelivery-consent"
last_modified: "2026-05-07T17:20:51+02:00"
language: "en"
---

# Register consent for paperless delivery of tax forms (US only)

Check and register user-consent preferences for electronic delivery of US tax forms.

In the United States (US), Adyen is required to file a **1099-K** tax form with the Internal Revenue Service (IRS) for any US-based user to which Adyen pays out directly. This filing process also includes printing and mailing the tax form to each legal entity associated with the users in your balance platform. The form is mailed to the address registered with Adyen for each legal entity.

If you want to save on the cost of having tax forms printed and mailed to your users through Adyen, you must gather your users' express consent to receive the forms in electronic format only, and register that consent with Adyen.

If users agreed to receive their 1099-K tax forms in electronic format only, your marketplace is responsible for [providing electronic delivery](/marketplaces/us-tax-forms) of, and access to, 1099-K tax form(s).

## Requirements

| Requirement                                                                     | Description                                                                       |
| ------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- |
| **Integration type**                                                            | You must have an Adyen for Platforms marketplace integration to use this feature. |
| **[API credentials](/marketplaces/manage-access/api-credentials-web-service/)** | Make sure that you have the following API credential(s)- LEM API key              |
| **[Webhooks](/development-resources/webhooks/configure-and-manage)**            | No webhook is needed for the API endpoints described on this page.                |

## Meeting Adyen (and IRS) electronic delivery requirements

When implementing this feature, consider the following:

* **IRS requirements**: The IRS publishes a set of specific requirements for providing tax information returns electronically [(IRS Publication 1179 - Section 4.6)](https://www.irs.gov/forms-pubs/about-publication-1179). You must comply with these requirements when offering electronic delivery only of tax form 1099-K to your users.

* **Client presentation of electronic delivery preferences**: As part of your implementation of this feature, you must present a way in your client interface for your marketplace's users to view and set their preference for electronic delivery of tax form 1099-K.\
  For example, you can show a toggle switch, a checkbox, or some other UI element, and bind their consent preference (**true** or **false**) to that UI element.\
  Your electronic delivery preferences selection page must present information about a user's rights according to rules the IRS has for providing tax information returns electronically, and for providing continuous access to those returns.

* **Electronic delivery of tax forms is your marketplace's responsibility**: In addition to the collection and registration of user consent for electronic delivery with Adyen, your marketplace is responsible for [providing electronic delivery](/marketplaces/us-tax-forms) of, and continued access to, their 1099-K tax form(s).

* **Deadline for registering electronic delivery consent**: To make sure Adyen does not charge your marketplace to print and mail forms to your users, their consent for electronic delivery of tax forms must be registered with Adyen by 11:59 pm Eastern Time, on December 31 in the year for which the user wants their tax forms electronically delivered.

## How it works

To check and register a user's consent for electronic delivery for 1009-K tax forms:

1. Implement a way in your client interface to let your marketplace's users view and set their consent preference for receiving their tax information forms electronically.\
   For example, you can show a toggle switch, a checkbox, or some other UI element, and bind their consent preference (**true** or **false**) to that UI element.
2. Before you initialize and load your preferences page, make an API call to [check your user's existing electronic delivery consent setting](#check-electronic-delivery-consent-setting) with Adyen.
3. Present your user's consent setting on your preferences page.
4. When your user decides to allow (or revoke) their consent for electronic delivery, make an API call to [register that consent preference with Adyen](#register-electronic-delivery-consent-setting).
5. Make sure you have implemented [providing electronic delivery](/marketplaces/us-tax-forms) of, and access to, 1099-K tax form(s).

## Check a user's electronic delivery consent preference

There are various reasons for checking the consent preferences of your users. For example, you could audit the number of users who have not opted for paperless delivery to determine the cost associated with mailing forms. You could also check so that you can urge your users to select paperless delivery before the deadline to register their consent preference.

You can only check a user's paperless delivery consent preference using the API. This feature is not available through the Customer Area.

To check a user's consent preference:

1. [Find the unique legal entity ID of the account holder](/marketplaces/manage-account-holders/?tab=ah-api_2#get-account-holders) whose consent status you want to check.

2. Make a POST [/legalEntities/{id}/checkTaxElectronicDeliveryConsent](https://docs.adyen.com/api-explorer/legalentity/latest/post/legalEntities/\(id\)/checkTaxElectronicDeliveryConsent) request, specifying the account holder's legal entity ID as a path parameter:

   | Path parameter                                                                                                                   | Required                                                                                    | Description                                                                                                                                                                         |
   | -------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
   | [id](https://docs.adyen.com/api-explorer/legalentity/latest/post/legalEntities/\(id\)/checkTaxElectronicDeliveryConsent#path-id) | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | The unique identifier of the legal entity. For a sole proprietorship, this is the individual legal entity ID of the owner. For an organization, this is the ID of the organization. |

   **Check electronic delivery consent preference**

   #### curl

   ```bash
   curl https://kyc-test.adyen.com/lem/v3/legalEntities/LE00000000000000001/checkTaxElectronicDeliveryConsent \
   -H 'x-api-key: ADYEN_LEGAL_ENTITY_MANAGEMENT_API_KEY' \
   -H 'content-type: application/json' \
   -X POST
   ```

   #### Java

   ```java
   // Adyen Java API Library v33.0.0
   import com.adyen.Client;
   import com.adyen.enums.Environment;
   import com.adyen.model.legalentitymanagement.*;
   import java.time.OffsetDateTime;
   import java.util.*;
   import com.adyen.service.legalEntityManagement.*;

   Client client = new Client("ADYEN_LEGAL_ENTITY_MANAGEMENT_API_KEY", Environment.TEST);
   // Send the request
   TaxEdeliveryConsentApi service = new TaxEdeliveryConsentApi(client);
   CheckTaxElectronicDeliveryConsentResponse response = service.checkStatusOfConsentForElectronicDeliveryOfTaxForms("id", null);
   ```

   #### PHP

   ```php
   <?php
   // Adyen PHP API Library v24.0.0
   use Adyen\Client;
   use Adyen\Environment;
   use Adyen\Service\LegalEntityManagement\TaxEdeliveryConsentApi;

   $client = new Client();
   $client->setXApiKey("ADYEN_LEGAL_ENTITY_MANAGEMENT_API_KEY");
   $client->setEnvironment(Environment::TEST);

   // Send the request
   $service = new TaxEdeliveryConsentApi($client);
   $response = $service->checkStatusOfConsentForElectronicDeliveryOfTaxForms('id');
   ```

   #### C\#

   ```cs
   // Adyen .net API Library v27.0.0
   using Adyen;
   using Environment = Adyen.Model.Environment;
   using Adyen.Model;
   using Adyen.Model.LegalEntityManagement;
   using Adyen.Service.LegalEntityManagement;

   var config = new Config()
   {
       XApiKey = "ADYEN_LEGAL_ENTITY_MANAGEMENT_API_KEY",
       Environment = Environment.Test
   };
   var client = new Client(config);

   // Send the request
   var service = new TaxEdeliveryConsentService(client);
   var response = service.CheckStatusOfConsentForElectronicDeliveryOfTaxForms("id");
   ```

   #### NodeJS (JavaScript)

   ```js
   // Adyen Node API Library v23.3.0
   const { Client, LegalEntityManagementAPI } = require('@adyen/api-library');

   const client = new Client({ apiKey: "ADYEN_LEGAL_ENTITY_MANAGEMENT_API_KEY", environment: "TEST" });

   // Send the request
   const legalEntityManagementAPI = new LegalEntityManagementAPI(client);
   const response = legalEntityManagementAPI.TaxEdeliveryConsentApi.checkStatusOfConsentForElectronicDeliveryOfTaxForms("id");
   ```

   #### Go

   ```go
   // Adyen Go API Library v16.3.0
   import (
     "context"
     "github.com/adyen/adyen-go-api-library/v16/src/common"
     "github.com/adyen/adyen-go-api-library/v16/src/adyen"
     "github.com/adyen/adyen-go-api-library/v16/src/legalEntityManagement"
   )
   client := adyen.NewClient(&common.Config{
     ApiKey:      "ADYEN_LEGAL_ENTITY_MANAGEMENT_API_KEY",
     Environment: common.TestEnv,
   })

   // Send the request
   service := client.LegalEntityManagement()
   req := service.TaxEdeliveryConsentApi.CheckStatusOfConsentForElectronicDeliveryOfTaxFormsInput("id")
   res, httpRes, err := service.TaxEdeliveryConsentApi.CheckStatusOfConsentForElectronicDeliveryOfTaxForms(context.Background(), req)
   ```

   #### Python

   ```py
   # Adyen Python API Library v13.3.0
   import Adyen

   adyen = Adyen.Adyen()
   adyen.client.xapikey = "ADYEN_LEGAL_ENTITY_MANAGEMENT_API_KEY"
   adyen.client.platform = "test" # The environment to use library in.

   # Send the request
   result = adyen.legalEntityManagement.tax_edelivery_consent_api.check_status_of_consent_for_electronic_delivery_of_tax_forms(id="id")
   ```

   #### Ruby

   ```rb
   # Adyen Ruby API Library v10.1.1
   require "adyen-ruby-api-library"

   adyen = Adyen::Client.new
   adyen.api_key = 'ADYEN_LEGAL_ENTITY_MANAGEMENT_API_KEY'
   adyen.env = :test # Set to "live" for live environment

   # Send the request
   result = adyen.legalEntityManagement.tax_edelivery_consent_api.check_status_of_consent_for_electronic_delivery_of_tax_forms('id')
   ```

   #### NodeJS (TypeScript)

   ```ts
   // Adyen Node API Library v23.3.0
   import { Client, LegalEntityManagementAPI, Types } from "@adyen/api-library";

   const client = new Client({ apiKey: "ADYEN_LEGAL_ENTITY_MANAGEMENT_API_KEY", environment: "TEST" });

   // Send the request
   const legalEntityManagementAPI = new LegalEntityManagementAPI(client);
   const response = legalEntityManagementAPI.TaxEdeliveryConsentApi.checkStatusOfConsentForElectronicDeliveryOfTaxForms("id");
   ```

3. In the response, check the value for `US1099k`. This field contains the legal entity's 1099-K electronic delivery consent preference registered with Adyen. If the value for `US1099k` is **true**, your platform is responsible for [providing electronic delivery](/marketplaces/us-tax-forms) of, and access to, 1099-K tax form(s) when they become available.

   | Response parameter                                                                                                                                  | Type    | Description                                                                                                                                                                                                                 |
   | --------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
   | [US1099k](https://docs.adyen.com/api-explorer/legalentity/latest/post/legalEntities/\(id\)/checkTaxElectronicDeliveryConsent#responses-200-US1099k) | boolean | The electronic delivery consent setting for the legal entity. The default value is **false**. If set to **true**, your marketplace is responsible for providing electronic delivery and access to their 1099-K tax form(s). |

   **Response: electronic delivery consent registration is false**

   ```json
   {
      "US1099k" : false
   }
   ```

## Register a user's electronic delivery consent preference

You can only register a user's electronic delivery preference using the API. This feature is not available through the Customer Area.

1. [Find the unique legal entity ID of the account holder](/marketplaces/manage-account-holders/?tab=ah-api_2#get-account-holders) whose consent status you want to check.

2. Before presenting your electronic delivery preferences page, check your user's existing electronic delivery consent setting.\
   Make a POST [/legalEntities/{id}/checkTaxElectronicDeliveryConsent](https://docs.adyen.com/api-explorer/legalentity/latest/post/legalEntities/\(id\)/checkTaxElectronicDeliveryConsent) request, specifying the account holder's legal entity ID as a path parameter:

   | Path parameter                                                                                                                   | Required                                                                                    | Description                                                                                                                                                                         |
   | -------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
   | [id](https://docs.adyen.com/api-explorer/legalentity/latest/post/legalEntities/\(id\)/checkTaxElectronicDeliveryConsent#path-id) | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | The unique identifier of the legal entity. For a sole proprietorship, this is the individual legal entity ID of the owner. For an organization, this is the ID of the organization. |

3. Based on the boolean value of the [US1099k](https://docs.adyen.com/api-explorer/legalentity/latest/post/legalEntities/\(id\)/checkTaxElectronicDeliveryConsent#responses-200-US1099k) parameter in the response, present your user's electronic delivery consent setting.

   | Request parameter                                                                                                                                   | Type    | Description                                                                                                                                                                                                                                                                          |
   | --------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
   | [US1099k](https://docs.adyen.com/api-explorer/legalentity/latest/post/legalEntities/\(id\)/checkTaxElectronicDeliveryConsent#responses-200-US1099k) | boolean | Consent to electronically deliver US 1099-K tax forms. By default, the value is **false**. Set to **true** to register consent for paperless delivery. If set to **true**, your marketplace is responsible for providing electronic delivery and access to their 1099-K tax form(s). |

   **Response: electronic delivery consent registration is false**

   ```json
   {
      "US1099k" : false
   }
   ```

4. If the user selects paperless delivery for their 1099-K tax form, make a POST [/legalEntities/{id}/setTaxElectronicDeliveryConsent](https://docs.adyen.com/api-explorer/legalentity/latest/post/legalEntities/\(id\)/setTaxElectronicDeliveryConsent) request, specifying the legal entity ID of the user as a path parameter, and `US1099k` as a request parameter with the value set to **true**.

   | Path parameter                                                                                                                   | Required                                                                                    | Description                                                                                                                                                                         |
   | -------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
   | [id](https://docs.adyen.com/api-explorer/legalentity/latest/post/legalEntities/\(id\)/checkTaxElectronicDeliveryConsent#path-id) | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | The unique identifier of the legal entity. For a sole proprietorship, this is the individual legal entity ID of the owner. For an organization, this is the ID of the organization. |

   | Request parameter                                                                                                                           | Required                                                                                    | Type    | Description                                                                                                                                                                                                                                                                         |
   | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
   | [US1099k](https://docs.adyen.com/api-explorer/legalentity/latest/post/legalEntities/\(id\)/setTaxElectronicDeliveryConsent#request-US1099k) | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | boolean | Consent to electronically deliver US 1099-K tax form. By default, the value is **false**. Set to **true** to register consent for paperless delivery. If set to **true**, your marketplace is responsible for providing electronic delivery and access to their 1099-K tax form(s). |

   **Set electronic delivery consent preference to true**

   #### curl

   ```bash
   curl https://kyc-test.adyen.com/lem/v3/legalEntities/LE00000000000000001/setTaxElectronicDeliveryConsent \
   -H 'x-api-key: ADYEN_LEGAL_ENTITY_MANAGEMENT_API_KEY' \
   -H 'content-type: application/json' \
   -X POST \
   -d '{
       "US1099k": true
   }'
   ```

   #### Java

   ```java
   // Adyen Java API Library v29.1.0
   import com.adyen.Client;
   import com.adyen.enums.Environment;
   import com.adyen.model.legalEntityManagement.*;
   import java.time.OffsetDateTime;
   import java.util.*;
   import com.adyen.service.legalEntityManagement.*;

   Client client = new Client("ADYEN_LEGAL_ENTITY_MANAGEMENT_API_KEY", Environment.TEST);

   // Create the request object(s)
   SetTaxElectronicDeliveryConsentRequest setTaxElectronicDeliveryConsentRequest = new SetTaxElectronicDeliveryConsentRequest()
     .US1099k(true);

   // Send the request
   TaxEdeliveryConsentApi service = new TaxEdeliveryConsentApi(client);
   service.setConsentStatusForElectronicDeliveryOfTaxForms("id", setTaxElectronicDeliveryConsentRequest, null);
   ```

   #### PHP

   ```php
   // Adyen PHP API Library v21.0.0
   use Adyen\Client;
   use Adyen\Environment;
   use Adyen\Model\LegalEntityManagement\SetTaxElectronicDeliveryConsentRequest;
   use Adyen\Service\LegalEntityManagement\TaxEdeliveryConsentApi;

   $client = new Client();
   $client->setXApiKey("ADYEN_LEGAL_ENTITY_MANAGEMENT_API_KEY");
   $client->setEnvironment(Environment::TEST);


   // Create the request object(s)
   $setTaxElectronicDeliveryConsentRequest = new SetTaxElectronicDeliveryConsentRequest();
   $setTaxElectronicDeliveryConsentRequest
     ->setUS1099k(true);

   // Send the request
   $service = new TaxEdeliveryConsentApi($client);
   $service->setConsentStatusForElectronicDeliveryOfTaxForms('id', $setTaxElectronicDeliveryConsentRequest);
   ```

   #### C\#

   ```cs
   // Adyen .net API Library v22.0.0
   using Adyen;
   using Environment = Adyen.Model.Environment;
   using Adyen.Model;
   using Adyen.Model.LegalEntityManagement;
   using Adyen.Service.LegalEntityManagement;

   var config = new Config()
   {
       XApiKey = "ADYEN_LEGAL_ENTITY_MANAGEMENT_API_KEY",
       Environment = Environment.Test
   };
   var client = new Client(config);

   // Create the request object(s)
   SetTaxElectronicDeliveryConsentRequest setTaxElectronicDeliveryConsentRequest = new SetTaxElectronicDeliveryConsentRequest
   {
     US1099k = true
   };

   // Send the request
   var service = new TaxEdeliveryConsentService(client);
   service.SetConsentStatusForElectronicDeliveryOfTaxForms("id", setTaxElectronicDeliveryConsentRequest);
   ```

   #### NodeJS (JavaScript)

   ```js
   // Adyen Node API Library v20.0.0
   // Require the parts of the module you want to use
   const { Client, LegalEntityManagementAPI } = require('@adyen/api-library');
   // Initialize the client object
   const client = new Client({apiKey: "ADYEN_LEGAL_ENTITY_MANAGEMENT_API_KEY", environment: "TEST"});

   // Create the request object(s)
   const setTaxElectronicDeliveryConsentRequest = {
     US1099k: true
   }

   // Send the request
   const legalEntityManagementAPI = new LegalEntityManagementAPI(client);
   legalEntityManagementAPI.TaxEdeliveryConsentApi.setConsentStatusForElectronicDeliveryOfTaxForms("id", setTaxElectronicDeliveryConsentRequest);
   ```

   #### Go

   ```go
   // Adyen Go API Library v14.0.0
   import (
     "context"
     "github.com/adyen/adyen-go-api-library/v9/src/common"
     "github.com/adyen/adyen-go-api-library/v9/src/adyen"
     "github.com/adyen/adyen-go-api-library/v9/src/legalEntityManagement"
   )
   client := adyen.NewClient(&common.Config{
     ApiKey:      "ADYEN_LEGAL_ENTITY_MANAGEMENT_API_KEY",
     Environment: common.TestEnv,
   })

   // Create the request object(s)
   setTaxElectronicDeliveryConsentRequest := legalEntityManagement.SetTaxElectronicDeliveryConsentRequest{
     US1099k: common.PtrBool(true),
   }

   // Send the request
   service := client.LegalEntityManagement()
   req := service.TaxEdeliveryConsentApi.SetConsentStatusForElectronicDeliveryOfTaxFormsInput("id").SetTaxElectronicDeliveryConsentRequest(setTaxElectronicDeliveryConsentRequest)
   service.TaxEdeliveryConsentApi.SetConsentStatusForElectronicDeliveryOfTaxForms(context.Background(), req)
   ```

   #### Python

   ```py
   # Adyen Python API Library v12.7.1
   import Adyen

   adyen = Adyen.Adyen()
   adyen.client.xapikey = "ADYEN_LEGAL_ENTITY_MANAGEMENT_API_KEY"
   adyen.client.platform = "test" # The environment to use library in.

   # Create the request object(s)
   json_request = {
     "US1099k": True
   }

   # Send the request
   adyen.legalEntityManagement.tax_edelivery_consent_api.set_consent_status_for_electronic_delivery_of_tax_forms(request=json_request, id="id")
   ```

   #### Ruby

   ```rb
   # Adyen Ruby API Library v9.9.0
   require "adyen-ruby-api-library"

   adyen = Adyen::Client.new
   adyen.api_key = 'ADYEN_LEGAL_ENTITY_MANAGEMENT_API_KEY'
   adyen.env = :test # Set to "live" for live environment

   # Create the request object(s)
   request_body = {
     :US1099k => true
   }

   # Send the request
   adyen.legalEntityManagement.tax_edelivery_consent_api.set_consent_status_for_electronic_delivery_of_tax_forms(request_body, 'id')
   ```

   #### NodeJS (TypeScript)

   ```ts
   // Adyen Node API Library v20.0.0
   // Require the parts of the module you want to use
   import { Client, LegalEntityManagementAPI, Types } from "@adyen/api-library";
   // Initialize the client object
   const client = new Client({apiKey: "ADYEN_LEGAL_ENTITY_MANAGEMENT_API_KEY", environment: "TEST"});

   // Create the request object(s)
   const setTaxElectronicDeliveryConsentRequest: Types.legalEntityManagement.SetTaxElectronicDeliveryConsentRequest = {
     US1099k: true
   };

   // Send the request
   const legalEntityManagementAPI = new LegalEntityManagementAPI(client);
   legalEntityManagementAPI.TaxEdeliveryConsentApi.setConsentStatusForElectronicDeliveryOfTaxForms("id", setTaxElectronicDeliveryConsentRequest);
   ```

5. Check that you receive a **200 - No Content** HTTP status code. This indicates your request succeeded.

6. Present your user's updated electronic delivery consent setting on your preference page.

## See also

* [Provide tax forms (US only)](/marketplaces/us-tax-forms)
* [IRS Publication 1179](https://www.irs.gov/forms-pubs/about-publication-1179) - General Rules and Specifications for Substitute Forms 1096, 1098, 1099, 5498, and Certain Other Information Returns (see section 4.6).
