Wp Query sort order from custom MetaBox

With the guidance of @jacobPeattie below is the working example. Once I removed the commas everything was working great. I added number_format to the deal amount to automatically add the commas on the frontend.

<?php
        $transaction = new WP_Query( array( 
            'post_type'         => 'transactions', 
            'paged'             => $paged, 
            'posts_per_page'    => 50,
            'orderby'           => array( 'meta_value_num' => 'ASC' ),
            'meta_key'          => 'deal_amount',
        ) );

    if ( $transaction->have_posts() ) : ?>
    <?php 
    while ( $transaction->have_posts() ) : $transaction->the_post();
        $deal_amount = get_post_meta( get_the_ID(), 'deal_amount', true );
        $property_type = get_post_meta( get_the_ID(), 'property_type', true );
        $property_size = get_post_meta( get_the_ID(), 'property_size', true );
    ?>
    <article class="col">

        <div class="trans-content">
            <?php the_title('<h3>', '</h3>'); ?>
            <?php echo '<h4>$' . number_format($deal_amount) . '</h4>'; ?>
            <?php echo esc_html($property_type); ?><br>
            <?php echo esc_html($property_size); ?><br>
            <?php $terms_as_text = get_the_term_list( $post->ID, 'loan-type', '', ', ', '' ) ; echo strip_tags($terms_as_text); ?></p>
        </div>
    <?php edit_post_link('edit'); ?>
    </article>
    <?php endwhile; wp_reset_postdata(); ?>
    <?php else : endif; ?>