/**
* When a formidable form submitted, add form's connected product to cart.
*/
add_action('frm_after_create_entry', 'ff_take_user_to_wc_checkout_for_payment', 20, 2);
function ff_take_user_to_wc_checkout_for_payment($entry_id, $form_id) {
$linked_products = get_posts([
'post_type' => 'product',
'post_status' => 'publish',
'numberposts' => 1,
'meta_key' => '_attached_formidable_form',
'meta_value' => $form_id,
'cache_results' => false,
]);
if (empty($linked_products)) {
return;
}
$product_id = $linked_products[0]->ID;
if (!function_exists('WC') || !WC()->session) {
return;
}
if (method_exists(WC()->session, 'set_customer_session_cookie')) {
WC()->session->set_customer_session_cookie(true);
}
WC()->cart->empty_cart();
$entry = FrmEntry::getOne($entry_id, true);
$form_data = $entry->metas;
$addon_total = 0;
foreach ($form_data as $value) {
if (is_string($value) && strpos(trim($value), '$') === 0) {
$price = floatval(str_replace(['$', ','], '', $value));
$addon_total += $price;
}
}
WC()->session->set('addon_total', $addon_total);
WC()->cart->add_to_cart($product_id, 1, 0, [], ['addon_total' => $addon_total]);
if (empty($_POST['frm_ajax'])) {
wp_safe_redirect(wc_get_checkout_url());
exit;
}
}
/**
* When an item is added to the cart, remove other products.
*/
add_filter( 'woocommerce_add_to_cart_validation', 'ff_keep_only_one_product_in_the_cart', 10, 3 );
function ff_keep_only_one_product_in_the_cart( $valid, $product_id, $quantity ) {
if( ! empty ( WC()->cart->get_cart() ) && $valid ) {
WC()->cart->empty_cart();
}
return $valid;
}
/**
* Disable add to cart confirmation message.
*/
add_filter( 'wc_add_to_cart_message_html', '__return_false' );
/**
* Redirect user to checkout page after adding a product to cart.
*/
add_filter ('add_to_cart_redirect', 'ff_redirect_to_checkout');
function ff_redirect_to_checkout() {
global $woocommerce;
$checkout_url = $woocommerce->cart->get_checkout_url();
return $checkout_url;
}
/**
* Calculate formidable add-on prices and add them to the total price in WC checkout.
*/
add_action('woocommerce_before_calculate_totals', 'ff_apply_addon_total_to_cart_price', 10, 1);
function ff_apply_addon_total_to_cart_price($cart) {
if (is_admin() && !defined('DOING_AJAX')) {
return;
}
foreach ($cart->get_cart() as $cart_item) {
if (!empty($cart_item['addon_total'])) {
$base_price = $cart_item['data']->get_price();
$addon_price = floatval($cart_item['addon_total']);
$cart_item['data']->set_price($base_price + $addon_price);
}
}
}
/**
* Use different Authorize.net accounts in checkout.
*/
add_filter( 'option_woocommerce_authorizeaim_settings', function( $woocommerce_authorizeaim_settings ) {
global $woocommerce;
if ( function_exists( 'is_checkout' ) && function_exists( 'get_field' ) && is_checkout() ) {
foreach ( $woocommerce->cart->get_cart() as $cart_item ) {
$product_id = $cart_item['product_id'];
$api_login_id = get_post_meta( $product_id, 'api_login_id', true );
$transaction_key = get_post_meta( $product_id, 'transaction_key', true );
if ( !empty( $api_login_id ) && !empty( $transaction_key ) ) {
$woocommerce_authorizeaim_settings['login_id'] = $api_login_id;
$woocommerce_authorizeaim_settings['transaction_key'] = $transaction_key;
break;
}
}
}
return $woocommerce_authorizeaim_settings;
} );
/**
* When placing a new WC order by submitting formidable,
* set order's customer detail according to the submitted information.
*/
add_action( 'woocommerce_new_order', 'ff_update_customer_data', 10, 2 );
function ff_update_customer_data($order_id,$order){
$postdata = $_POST;
$email = $postdata['la_email'];
$username = $postdata['la_email'];
$args = array(
'user_email' => $email,
'display_name' => $postdata['la_first_name'],
'first_name' => $postdata['la_first_name'],
'last_name' => $postdata['la_last_name']
);
$userdata = wc_create_new_customer($email,$username,'',$args);
$userdata = json_decode(json_encode($userdata), true);
if(isset($userdata['errors'])){
$customer = get_user_by('email',$email);
if($customer){
$user_id = $customer->ID;
}
}else{
$user_id = $userdata;
update_user_meta($user_id, "first_name",$postdata['la_first_name']);
update_user_meta($user_id, "last_name",$postdata['la_last_name']);
}
$address = array(
'first_name' => $postdata['la_first_name'],
'last_name' => $postdata['la_last_name'],
'email' => $email,
'phone' => $postdata['la_ower_phone'],
'address_1' => $postdata['la_buisiness_adddress_1'],
'address_2' => $postdata['la_buisiness_adddress_2'],
'city' => $postdata['la_buisiness_adddress_city'],
'state' => $postdata['la_buisiness_adddress_state'],
'postcode' => $postdata['la_buisiness_adddress_zipcode'],
'country' => 'US'
);
$order = new WC_Order($order_id);
$order->set_customer_id($user_id);
$order->set_address($address, 'billing');
$order->set_address($address, 'shipping');
$order->save();
}
/**
* Link formidable entry with woocommerce order. -- ⇩⇩⇩ --
*/
// 1. Store formidable entry ID in the customer session.
add_action( 'frm_after_create_entry', function( $entry_id, $form_id ) {
WC()->session->set( 'frm_entry_id', $entry_id );
}, 20, 2 );
// 2. Set formidable entry id from session to the order as an order meta.
add_action( 'woocommerce_checkout_create_order', function( $order, $data ) {
if ( $entry_id = WC()->session->get( 'frm_entry_id' ) ) {
$order->update_meta_data( '_frm_entry_id', $entry_id );
}
}, 10, 2 );
// 3. Display the link to the formidable entry on the order details page.
add_filter( 'woocommerce_order_item_display_meta_key', function( $display_value, $meta ) {
if ( $meta->key == '_formidable_form_data' ) {
$display_value = __( 'Formidable Entry', 'formidable-woocommerce' );
}
return $display_value;
}, 10, 2 );
How to File a Vermont Annual Report | Fast Filings
Skip to content
A Step By Step Guide toVermontAnnual Report Filing
Filing an annual report in Vermont is essential for maintaining your business’s active status and staying compliant with state regulations. This guide will walk you through each step, from understanding deadlines to submitting the proper documents, ensuring a smooth filing process.
Step 1: Determine if Your Business Needs to File
Most registered business entities in Vermont, including LLCs, corporations, and nonprofits, are required to file an annual report. Confirming that your specific business type falls under this requirement is essential to avoid unnecessary filings or fees.
Step 2: Understand the Filing Deadlines
For corporations, the annual report must be filed each fiscal year within the first two and a half months following the fiscal year-end on record. Limited liability companies (LLCs) are also required to file annually, with reports due within three months after the fiscal year-end. For nonprofits, renewal is on a biennial basis, beginning the first year after initial registration. Nonprofits need to file a biennial report between January 1 and April 1 to maintain compliance.
The Vermont annual report filing process requires specific information, including:
Business Name and Address: Ensure this matches your formation documents.
Principal Office and Mailing Address: Where official correspondence should be directed.
Registered Agent Information: Verify that your registered agent details are current and correct.
Management Structure and Updates: For LLCs, update member/manager details, and for corporations, ensure officer and director names are accurate.
Step 4: Submit the Annual Report Online or by Mail
Vermont offers an online filing portal through the Secretary of State’s website. You can also mail in the report if preferred, but online filing generally ensures faster processing and immediate confirmation of receipt.
Filing your Vermont annual report may seem straightforward, but a professional filing service can save you time, prevent costly mistakes, and streamline the process. Here are key reasons to consider using a filing service:
Avoid Costly Errors and Penalties: Filing errors or missing deadlines can lead to fees and even business penalties. Professional filing services, like FastFilings online annual report filing, are well-versed in Vermont’s requirements, minimizing the risk of errors that could impact your business’s standing.
Save Time with Expert Support: Filing annual reports requires attention to detail. A filing service can handle the process quickly, ensuring your report is filed correctly without adding to your workload.
Automated Reminders for Timely Compliance: Filing services often offer reminder systems for upcoming deadlines, helping your business stay compliant year after year without the need to track dates manually.
Maintain Your Good Standing with the State: Staying compliant is essential to keep your business in good standing. A filing service ensures your report is accurate and on time, protecting your business’s status.
Use Our Online Annual Report Service to File Your Vermont Annual Report
Ready to simplify your Vermont annual report online filing process? Let the experienced team at FastFilings handle it for you. Our simple online filing process makes it easy for Vermont businesses to file their annual reports. Get started today to ensure your annual report is filed accurately and on time so you can focus on growing your business.
For corporations, the Vermont annual report is due within the first two and a half months after the end of the fiscal year on record. LLCs must file within three months after their fiscal year end. Nonprofit corporations file a biennial report every two years, due between January 1 and April 1, starting the year after initial registration. Keeping track of your due date is crucial to avoid late fees and ensure your business remains in good standing.
What happens if you file your Vermont annual report late?
If you miss the filing deadline, Vermont imposes penalties, and repeated delays can result in your business falling out of compliance, potentially leading to administrative dissolution. Filing on time helps avoid these disruptions, ensuring your business stays compliant with state requirements.
What happens if my business is dissolved for not filing?
If your business is administratively dissolved for failing to file the annual report, it loses its active status and legal protections. This can prevent you from entering into contracts, securing financing, or accessing certain business resources. To reinstate, you’ll typically need to submit all overdue reports and pay any related fees.
What are the current fees for filing late?
The specific amount may vary, so it’s recommended to check the Vermont Secretary of State’s website or consult a filing service to get the most accurate, up-to-date information.
How often do Vermont corporations need to report changes for directors and officers?
Vermont corporations are required to report any changes to directors and officers annually when filing their annual reports. This ensures that the state has the most current information on your business’s management structure, which is critical for both legal and operational reasons.