+ my $transfer_chart = $tax->taxkey == 2 ? SL::DB::Chart->new(id => $::instance_conf->get_advance_payment_taxable_7_id)->load
+ : $tax->taxkey == 3 ? SL::DB::Chart->new(id => $::instance_conf->get_advance_payment_taxable_19_id)->load
+ : undef;
+ die "No Transfer Chart for Advance Payment" unless ref $transfer_chart eq 'SL::DB::Chart';
+
+ my $arap_full_booking= SL::DB::AccTransaction->new(trans_id => $self->id,
+ chart_id => $clearing_chart->id,
+ chart_link => $clearing_chart->link,
+ amount => $arap_amount * -1, # full amount
+ transdate => $transdate_obj,
+ source => 'Automatic Tax Booking for Payment in Advance' . $fullmatch,
+ taxkey => 0,
+ tax_id => SL::DB::Manager::Tax->find_by(taxkey => 0)->id);
+ $arap_full_booking->save;
+ push @new_acc_ids, $arap_full_booking->acc_trans_id;
+
+ my $arap_tax_booking= SL::DB::AccTransaction->new(trans_id => $self->id,
+ chart_id => $transfer_chart->id,
+ chart_link => $transfer_chart->link,
+ amount => _round($netamount), # full amount
+ transdate => $transdate_obj,
+ source => 'Automatic Tax Booking for Payment in Advance' . $fullmatch,
+ taxkey => $tax->taxkey,
+ tax_id => $tax->id);
+ $arap_tax_booking->save;
+ push @new_acc_ids, $arap_tax_booking->acc_trans_id;
+