I am working on a code to create a woocommerce order manually from a gravity form submission.
I have 'custom notes' that I have managed to add to order notes BUT ideally it would be in a meta box below the product/item line.
Any suggestions would be appreciated (I am self taught and not expert).
Here is my code:
add_action( 'gform_after_submission_56', 'post_to_third_party', 10, 2 );
function post_to_third_party( $entry, $form ) {
global $woocommerce;
// use this to find out $entry output
var_dump($entry);
// Make sure to add hidden field somewhere in the form with product id and define it here, If you have some other way of defining products in the form you need to make sure product id is returned in the variable below somehow
$user_id =rgar( $entry, '97' );
$note = rgar( $entry, '53' );
$product_id = rgar( $entry, '71' );
$quantity = rgar( $entry, '73' );
$address = array(
'first_name' => rgar( $entry, '98' ),
'last_name' => rgar( $entry, '99' ),
'company' => rgar( $entry, '' ),
'email' => rgar( $entry, '83' ),
'phone' => rgar( $entry, '84' ),
'address_1' => rgar( $entry, '88.1' ),
'address_2' => rgar( $entry, '88.2' ),
'city' => rgar( $entry, '88.3' ),
'state' => rgar( $entry, '88.4' ),
'postcode' => rgar( $entry, '88.5' ),
'country' => rgar( $entry, '88.6' ),
);
$order = wc_create_order();
$order->set_customer_id( $user_id );
$order->add_product( wc_get_product($product_id), $quantity, $prices);
$order->set_address( $address, 'billing' );
$order->calculate_totals();
$order->update_status("on hold", 'pending', TRUE);
$order->add_order_note( $note );
}