Untitled

 avatar
webwizards
plain_text
25 days ago
2.0 kB
13
Indexable
function send_payout(){

	$user_id = 1234; // replace with your agent user ID (the agent being paid)
	$amount = 1000; // amount paid
	$method = 'PayPal Payment'; // payment method used, can be any text
	$note = 'Custom note here...';
	$havebonus = 'false'; //bool, true or false
	$havebonus = filter_var($havebonus,FILTER_VALIDATE_BOOLEAN);


	// get user history
	$user_payout_history = sanitize_text_field(get_user_meta($user_id,'salesking_user_payout_history', true));

	// create transaction
	$date = date_i18n( 'Y/m/d', time()+(get_option('gmt_offset')*3600) ); 
	$outstanding_balance = get_user_meta($user_id,'salesking_outstanding_earnings', true);
	$new_outstanding_balance = floatval($outstanding_balance) - floatval($amount);
	if ($havebonus === true){
		$new_outstanding_balance = $outstanding_balance; // is bonus, so does not count
	}	
	$transaction_new = $date.':'.$amount.':'.$new_outstanding_balance.':'.$note.':'.$method;

	// update credit history
	update_user_meta($user_id,'salesking_user_payout_history',$user_payout_history.';'.$transaction_new);

	// user balance history start
	$old_balance = get_user_meta($user_id,'salesking_outstanding_earnings', true);
	$new_balance = $new_outstanding_balance;
	$amount = '- '.$amount;
	$date = date_i18n( 'Y/m/d', time()+(get_option('gmt_offset')*3600) ); 
	$note_history = esc_html__('Payout was sent to user.','salesking');
	$user_balance_history = sanitize_text_field(get_user_meta($user_id,'salesking_user_balance_history', true));
	$new_entry = $date.':'.$amount.':'.$old_balance.':'.$new_balance.':'.$note_history;
	update_user_meta($user_id,'salesking_user_balance_history', $user_balance_history.';'.$new_entry);
	// user balance history end

	// update user consumed balance
	update_user_meta($user_id,'salesking_outstanding_earnings',$new_outstanding_balance);
	// send email to user
	$userdata = get_userdata($user_id);
	$recipient = $userdata->user_email;
	do_action( 'salesking_new_payout', $recipient, $amount, $method, $note );

}
Editor is loading...
Leave a Comment