RequestForBusiness
This payee-initiated method allows you to generate a common secure URL for a specific business (payer) or a specific DBA of the business, embed it as an iframe in your software, and let payees/vendors complete their W-9/W-8 forms independently.
note
Alternatively, you can generate individual secure URLs for each payee using the RequestByUrl method.
To obtain this URL, you must send an API request using the BusinessId or PayerRef.
How does this work?
- OAuth 2.0 Authentication - Call the Auth method to get the access token. This access token must be supplied in the request header as the 'Bearer' token. Refer to OAuth 2.0 Authentication for more information on JWT authentication.
- Call the [POST] WHCertificate/Requestforbusiness endpoint - The request JSON must contain the following parameters:
- Access Token in the header
- Business Identifier - You must supply the BusinessId, a unique identifier generated by TaxBandits when a business is created. Refer to the Business endpoint to learn more. You can also include PayerRef and TIN if you prefer.
- DBA Reference (Optional) - If you are required to obtain the URL for a particular DBA, you must provide the corresponding DBAId and DBARef.
- Business Logo and Callback URLs (Optional) - You can provide your business logo and callback URLs for customization.
- Customizations (Optional) - You can provide the following things in your request for customization.
- Business Logo - You can provide your business logo and its position.
- Color Theme - Specify the primary and secondary colors of the page.
- Interview-Style - As an alternative to direct-form entry, provide your recipients with an interview-style W-9/W-8 completion.
- URL generation and form completion - TaxBandits API will generate a unique URL for the business (or DBA) and send the link in the response, which must then be embedded into the page or shown by itself (Hosted Solution) for the recipients to click. Upon clicking, the recipient will be provided with the option to choose the Form W-9 or W-8BEN based on their citizenship and resident status. Accordingly, Form W-9 or W-8BEN will be shown with built-in validations. An electronic signature pad allows the recipient to sign and submit the form electronically.
- Webhook Notification - Once the recipient completes and signs the form, you will be notified via Webhooks. If the node WebhookRef in the request JSON has a Webhook Reference ID, the Webhook response will be posted to the corresponding Callback URL.
The webhook payload will have the following recipient data:- For W-9 - Name, address, email, TIN Matching status, form data, PDFURL to download the completed form, etc.
- For W-8BEN - Name, country, address, and reduced tax rate.
- Form W-8BEN-E - Name, country, entity, TIN, Tax benefits, etc.
Refer to Form WhCertificate webhook to learn more about webhook setup and sample payload.
- If IsTINMatching is set to 'TRUE', TaxBandits will validate the payee's Name, TIN, and TINType against the IRS database. The TIN Matching status of the payee (Success or Failed) will be posted on the same Webhook URL configured for 'WhCertificate Status Change'. If the name and TIN given by the payees do not match the IRS database, the W-9/W-8 will become invalid, and you have to request a new Form W-9/W-8 from the respective payee.
POST WhCertificate/Requestforbusiness
Request Body
Field | Type | Description |
---|---|---|
SubmissionManifest | object[] | SubmissionManifest provides brief information about submission and the services opted for. |
IsTINMatching | Boolean | If set as True, TIN Matching service will be enabled. Once the recipient signs the Form W-9, TaxBandits will validate the recipient’s Name, TIN, and TINType with the IRS. |
UrlValidity | string | Expiration date for the generated secure URL. format: MM/DD/YYYY or MM-DD-YYYY Example: 10/20/2023 or 10-20-2023 |
CustomizationId | Guid | Optional A unique customization identifier generated by TaxBandits after you complete the customization in the console.Note: You can customize the W-9/W-8 page (secure URL) with your own logo, fav icon, primary and secondary colors, and email. |
Customization | object | Optional collects the customizations like Business Logo, Primary color, Secondary color, etc. |
BusinessLogoUrl | string | Optional Gets the Business Logo. If given the business logo will be shown in the Iframe page. Size Range: ..150 |
LogoPosition | string | Optional Gets the position in which the logo should be displayed.Allowed values"LEFT", "CENTER", "RIGHT" |
InterviewFlow | Boolean | Optional If TRUE, your vendors will fill the W-9 in an interview flow instead of the traditional Form filling flow. |
PrimaryColor | string | Optional Gets the primary color for the portal. You can use this to customize the color theme of the portal to match with your application color |
SecondaryColor | string | Optional Gets the secondary color for the portal. You can use this to customize the color theme of the portal to match with your application color |
Requester | object | Collects the Requestor identifier i.e., TIN or TBS Business Id or PayerRef. If neither is supplied, the default Business will be assumed as the Requester. |
BusinessId | Guid | TaxBandits Unique Business Identifier. This ID is generated by TaxBandits after you create a business in your account using the Business endpoint. If you do not provide the BusinessId in the request, then the URL will be generated against the default business, i.e., the first business created in your account. |
PayerRef | string | Optional Unique payer identifier assigned by the client while requesting the payer information using the endpoint Business/RequestByURL. Size Range: 1-50 |
TIN | string | Optional Taxpayer Identification Number. Use this as an alternative for BusinessId or PayerRef. Size Range: 9-11 Allowed values"EIN", "SSN" (Including hyphen) |
DBAId | Guid | Unique Identifier for the DBA. |
DBARef | string | Unique identifier for each DBA. This identifier can be used in future references of the DBA in the API. |
Request JSON
- Sample 1
- Sample 2
Generate a secure W-9/W-8 URL for a particular payer (business).
{
"SubmissionManifest": {
"IsTINMatching": true,
"UrlValidity": "08/27/2024",
"CustomizationId": null,
"Customization": {
"BusinessLogoUrl": "https://www.spanenterprises.com/Content/Images/span.png",
"LogoPosition": "RIGHT",
"InterviewFlow": false,
"PrimaryColor": "#21DF9A",
"SecondaryColor": "#323F92"
}
},
"Requester": {
"BusinessId": "32416f37-b16c-4a6e-9c73-9f974ace75b6",
"PayerRef": null,
"TIN": null
}
}
Generate a secure W-9/W-8 URL for a particular DBA of the corresponding payer (business). Customize the form completion page based on the CustomizationId provided.
{
"SubmissionManifest": {
"IsTINMatching": true,
"UrlValidity": "08/27/2024",
"CustomizationId": "e4e3db3a-5032-4646-97d1-8d0837f43189",
"Customization": {
"BusinessLogoUrl": null,
"LogoPosition": null,
"InterviewFlow": false,
"PrimaryColor": null,
"SecondaryColor": null
}
},
"Requester": {
"BusinessId": "86b2ea22-c928-42ef-a5fe-545a09072fdc",
"PayerRef": null,
"TIN": "26-3537385",
"DBAId": "6aaba0bc-ec93-4a21-a600-f1733f76130e",
"DBARef": "Ref008"
}
}
Response Body
Field | Type | Description |
---|---|---|
SecureUrl | string | Returns the Secure URL generated by TaxBandits for the particular business |
Requester | object | Returns the requestor identifier i.e., TIN or TBS Business Id or PayerRef |
BusinessId | Guid | Returns the unique Business Identifier |
PayerRef | string | Returns the unique payer identifier assigned by the client while requesting the payer information using the endpoint Business/RequestByURL |
TIN | string | Returns the Taxpayer Identification Number Size Range: 9-11 |
DBAId | Guid | Returns the unique Identifier for the DBA |
DBARef | string | Returns the unique identifier for each DBA. This identifier can be used in future references for the DBA in the API |
Errors | object[] | Collection of errors |
Id | string | Error ID number. This ID is assigned by TaxBandits and it is unique for each error. |
Name | string | Name of the errored node. |
Message | string | Shows the error message. |
Request JSON
- Response 1
- Response 2
{
"SecureUrl": "https://shinel_426251.tbs-sprint.irsformw9.com",
"Requester": {
"BusinessId": "9c8d5903-3fb9-4ffe-8551-348a7c4f7087",
"PayerRef": null,
"TIN": "26-3537386",
"DBAId": null,
"DBARef": null
},
"Errors": null
}
{
"SecureUrl": "https://servic_535668.tbs-uat.irsformw9.com",
"Requester": {
"BusinessId": "346a9ee1-8c36-4f20-b11c-b565dc911d84",
"PayerRef": null,
"TIN": null,
"DBAId": "3e23954d-77cc-4607-b3ad-2002fe061c01",
"DBARef": "Ref008"
},
"Errors": null
}