PluginUs.Net - Business Tools for WooCommerce and WordPress

[realize your idea - make your dreams come true]

Support Forum

You need to log-in to create request (topic) to the support

مشكله العمله ما تحول في صفحة نجاح الطلب في تطبيق fluxstore

The support doesn work on Saturdays and Sundays, so some Friday requests can be answered on Monday. If you have problems with registration ask help on contact us page please
If you not got email within 24~36 business hours, firstly check your spam box, and if no any email from the support there - back to the forum and read answer here. DO NOT ANSWER ON EMAILS [noreply@pluginus.net] FROM THE FORUM!! Emails are just for your info, all answers should be published only here.
The support doesn work on Saturdays and Sundays, so some Friday requests can be answered on Monday.

I have a problem with the Fluxstore app. The website and the app are working perfectly, but after placing an order, in the final stage (order success, order details), the virtual currency doesn't convert. For example, I have Saudi Riyals as my default currency and two Yemeni Riyals (new and old). An item costs 60 Saudi Riyals, and I choose the new Yemeni Riyal. The entire transaction is processed in Yemeni Riyals until the order is complete, resulting in 60 new Yemeni Riyals. It should cost 25,500 new Yemeni Riyals. I would appreciate any help with this issue.

 

I have two currencies in Yemen: the new Yemeni rial and the old Yemeni rial. The exchange rate for the new Yemeni rial is 425 to the Saudi riyal, and for the old Yemeni rial it's 150. I added everything correctly, but during the purchase process, at the final stage of submitting the order, it says the currency code is incorrect and does not exist.

https://dailyshopp.net/

 

Every time I refresh the page, it reverts to the beginning. I've selected all the solutions here on the site. Of course, I've taken them from you; I hope you can solve my problem.
https://dailyshopp.net/   اعمل تجربه وشاهد 

How do I change the currency name from English to Arabic?

Hello

Place please purchase code of the plugin into the secret area of this ticket:
https://share.pluginus.net/image/i20230222134241.png
https://share.pluginus.net/image/i20230222134615.png
https://share.pluginus.net/image/i20230222134511.png

I've investigated the issue. The problem is that Fluxstore uses WooCommerce REST API, and WOOCS doesn't have built-in REST API integration for order data. When custom currency codes like YEROLD are used, the API either doesn't recognize them or shows prices without proper conversion.

The Issue:

  1. Your currency setup is correct: YER (new), SAR (base), YEROLD (old)
  2. During checkout, everything works fine on the website
  3. But on the"Order Success" screen in Fluxstore, the app fetches order data via REST API
  4. The REST API doesn't apply WOOCS conversion, showing base prices instead

Solution:

I've created a code snippet that hooks into WooCommerce REST API and converts all order prices using the currency rate stored when the order was placed.

Add this code (use Code Snippets plugin or functions.php):

add_filter('woocommerce_rest_prepare_shop_order_object', 'woocs_fix_rest_api_order_prices', 10, 3);

function woocs_fix_rest_api_order_prices($response, $order, $request) {
    global $WOOCS;
    
    if (!isset($WOOCS) || !is_object($WOOCS)) {
        return $response;
    }
    
    $order_currency = $order->get_currency();
    $order_rate = $order->get_meta('_woocs_order_rate');
    $base_currency = $order->get_meta('_woocs_order_base_currency');
    
    if (empty($order_rate) || empty($base_currency)) {
        return $response;
    }
    
    $currencies = $WOOCS->get_currencies();
    
    if (!isset($currencies[$order_currency])) {
        return $response;
    }
    
    $data = $response->get_data();
    
    // Convert line items
    if (isset($data['line_items']) && is_array($data['line_items'])) {
        foreach ($data['line_items'] as $key => $item) {
            if (isset($item['subtotal'])) {
                $data['line_items'][$key]['subtotal'] = (string) round($item['subtotal'] * $order_rate, 2);
            }
            if (isset($item['total'])) {
                $data['line_items'][$key]['total'] = (string) round($item['total'] * $order_rate, 2);
            }
            if (isset($item['price'])) {
                $data['line_items'][$key]['price'] = (float) round($item['price'] * $order_rate, 2);
            }
        }
    }
    
    // Convert totals
    if (isset($data['total'])) {
        $data['total'] = (string) round($data['total'] * $order_rate, 2);
    }
    if (isset($data['total_tax'])) {
        $data['total_tax'] = (string) round($data['total_tax'] * $order_rate, 2);
    }
    if (isset($data['shipping_total'])) {
        $data['shipping_total'] = (string) round($data['shipping_total'] * $order_rate, 2);
    }
    if (isset($data['discount_total'])) {
        $data['discount_total'] = (string) round($data['discount_total'] * $order_rate, 2);
    }
    
    // Convert shipping lines
    if (isset($data['shipping_lines']) && is_array($data['shipping_lines'])) {
        foreach ($data['shipping_lines'] as $key => $item) {
            if (isset($item['total'])) {
                $data['shipping_lines'][$key]['total'] = (string) round($item['total'] * $order_rate, 2);
            }
        }
    }
    
    $response->set_data($data);
    
    return $response;
}

How it works:

  • When an order is placed, WOOCS stores the currency rate in order metadata
  • This code intercepts REST API responses and applies that stored rate to all prices
  • Works with any currency code, including custom ones like YEROLD

Test it:

  1. Add the code
  2. Place a test order in Fluxstore with new Yemeni Rial
  3. Check the Order Success screen - prices should now show correctly converted

Note: If Fluxstore caches API responses, you may need to clear the app cache or reinstall to see changes for existing orders.

Let me know if this fixes the issue!

 

Quote from customer-support@dailyshopp.net on December 15, 2025, 13:05

How do I change the currency name from English to Arabic?

tab Options -> Custom currency symbols -> https://clip2net.com/s/4ntXTLV

 

Unfortunately, the code above didn't work, even though Fluxstore is registered in the app and says it fully supports your add-on. It's true it does support it, but unfortunately, on the order success page and in the order history, it hasn't changed from Saudi to Yemeni. I've been trying for over a month and a half, and it hasn't worked. I've tried everything, and Fluxstore support hasn't responded to tickets for over 10 days. It seems they overlooked the problem and couldn't fix it. There's one thing I need from you: I'll send you a confirmation from the add-on settings. Perhaps I entered the codes incorrectly. Please check if the code is correct.

This code is in the env.dart file and the currency works on all application pages except the order success page, the order history page, and the email message.

"advanceConfig": {
 "DefaultLanguage":"ar",
 "DetailedBlogLayout":"halfSizeImageType",
 "EnablePointReward": true,
 "hideOutOfStock": false,
 "HideEmptyTags": true,
 "HideEmptyCategories": true,
 "EnableRating": true,
 "hideEmptyRating": true,
 "EnableCart": true,
 "ShowBottomCornerCart": true,
 "EnableSkuSearch": true,
 "showStockStatus": true,
 "GridCount": 3,
 "isCaching": false,
 "OptimizeImage": {"enable": false,"plugin":"optimole"},
 "httpCache": false,
 "DefaultCurrency": {
   "symbol":"﷼",
   "currency":"SAR",
   "countryCode":"",
   "currencyCode":"SAR",
   "decimalDigits": 0,
   "symbolBeforeTheNumber": true
  },
 "Currencies": [
    {
     "symbol":"ريال جديد",
     "currency":"YER",
     "countryCode":"YER",
     "currencyCode":"YER",
     "decimalDigits": 0,
     "symbolBeforeTheNumber": true
    },
    {
     "symbol":"﷼",
     "currency":"SAR",
     "countryCode":"SAR",
     "currencyCode":"SAR",
     "decimalDigits": 2,
     "symbolBeforeTheNumber": true
    },
    {
     "symbol":"ريال قديم",
     "currency":"YERold",
     "countryCode":"",
     "currencyCode":"YERold",
     "decimalDigits": 3,
     "symbolBeforeTheNumber": true
    }
  ],

Hello,

Ok, let dance with ideas!

Your custom currencies (YER and YEROLD) might not be registered in WooCommerce's currency system. When currencies aren't properly registered, the WooCommerce REST API (which Fluxstore uses) doesn't recognize them and falls back to the base currency (SAR).

Please add this code using Code Snippets plugin or your theme's functions.php:

// Register custom Yemeni currencies in WooCommerce
add_filter('woocommerce_currencies', 'add_yemeni_currencies');
function add_yemeni_currencies($currencies) {
$currencies['YER'] = __('Yemeni Rial (New)', 'woocommerce');
$currencies['YEROLD'] = __('Yemeni Rial (Old)', 'woocommerce');
return $currencies;
}

// Add currency symbols
add_filter('woocommerce_currency_symbol', 'add_yemeni_currency_symbols', 10, 2);
function add_yemeni_currency_symbols($currency_symbol, $currency) {
switch($currency) {
case 'YER':
$currency_symbol = 'ر.ي'; // You can change this to 'ريال جديد' if you prefer
break;
case 'YEROLD':
$currency_symbol = 'ر.ي'; // You can change this to 'ريال قديم' if you prefer
break;
}
return $currency_symbol;
}

IMPORTANT: Currency codes must match EXACTLY between WooCommerce, WOOCS, and Fluxstore:

In your Fluxstore env.dart file, you have:
-"currencyCode":"YER" ✓
-"currencyCode":"YERold" ⚠️ (mixed case)

But currency codes in WooCommerce are typically UPPERCASE. Please check your WOOCS currency settings and confirm:
- Are you using"YEROLD" (all uppercase) or"YERold" (mixed case)?

After adding this code and ensuring the currency codes match exactly everywhere, please:
1. Clear your site cache (if you use any caching plugin)
2. Place a test order
3. Check if the order success page in Fluxstore now shows the correct currency

Let me know the results!

I tried all the solutions, but nothing worked, even though the entire website and the app itself are working perfectly. The only issues are the order history page and the email order notifications within the app.

Therefore, I want to express my deepest gratitude for your excellent communication with your customers. I am proud to purchase add-ons from you because you are honest, loyal, and kind people. Thank you for your prompt response and flexible service. Thank you, thank you!

Hello

Thank you :)

I've investigated your issue thoroughly and after analyzing how Fluxstore works, I've come to an important realization:

The core problem: Fluxstore is a mobile application that we cannot directly modify or control. It fetches order data through WooCommerce REST API and processes it internally. While we can try to adjust the API responses, we cannot guarantee how the app will handle custom currency codes like YEROLD.

Instead of fighting with the app's limitations, I propose we change the approach entirely:

Rather than trying to fix currency conversion on the order success screen, let's remove the confusion completely by customizing what customers see after placing an order.

I can offer you two solutions:

Solution 1 - Modify the default Thank You page Using WordPress hooks, we replace all order details (prices, line items, totals) with a clean, professional message:

  • "Thank you for your order!"
  • "Order #[number] has been received and is being processed"
  • "You will receive confirmation via email shortly"
  • "You can view complete order details in My Account section"

Code for Solution 1 (add to functions.php):

// Remove order details table from Thank You page
add_action('woocommerce_thankyou', 'remove_order_details_thankyou_page', 1);
function remove_order_details_thankyou_page($order_id) {
    remove_action('woocommerce_thankyou', 'woocommerce_order_details_table', 10);
}

// Add custom thank you message
add_action('woocommerce_thankyou', 'custom_thankyou_message', 5);
function custom_thankyou_message($order_id) {
    if (!$order_id) return;
    
    $order = wc_get_order($order_id);
    
    echo '<div class="woocommerce-notice woocommerce-notice--success woocommerce-thankyou-order-received" style="text-align:center; padding:30px; background:#f8f9fa; border-radius:8px; margin:20px 0;">';
    echo '<h2 style="color:#28a745; margin-bottom:20px;">✓ ' . __('شكراً لك على طلبك!', 'woocommerce') . '</h2>';
    echo '<p style="font-size:18px; margin:10px 0;">' . sprintf(__('رقم الطلب: %s', 'woocommerce'), '<strong>' . $order->get_order_number() . '</strong>') . '</p>';
    echo '<p style="font-size:16px; margin:10px 0;">' . __('طلبك قيد المعالجة. سنرسل لك رسالة تأكيد عبر البريد الإلكتروني قريباً.', 'woocommerce') . '</p>';
    echo '<p style="font-size:16px; margin:10px 0;">' . __('يمكنك عرض تفاصيل طلبك الكاملة في قسم"حسابي".', 'woocommerce') . '</p>';
    echo '<p style="margin-top:20px;"><a href="' . wc_get_account_endpoint_url('orders') . '" class="button" style="padding:12px 30px; font-size:16px;">' . __('عرض الطلبات', 'woocommerce') . '</a></p>';
    echo '</div>';
}

// Also simplify REST API response for Fluxstore app
add_filter('woocommerce_rest_prepare_shop_order_object', 'simplify_order_rest_response', 20, 3);
function simplify_order_rest_response($response, $order, $request) {
    $data = $response->get_data();
    
    // Remove detailed price information from line items
    if (isset($data['line_items'])) {
        foreach ($data['line_items'] as $key => $item) {
            // Keep product name but remove price details
            unset($data['line_items'][$key]['subtotal']);
            unset($data['line_items'][$key]['subtotal_tax']);
            unset($data['line_items'][$key]['total']);
            unset($data['line_items'][$key]['total_tax']);
            unset($data['line_items'][$key]['price']);
        }
    }
    
    $response->set_data($data);
    return $response;
}

Solution 2 - Create a completely custom Thank You page We create a beautiful, branded thank you page with full redirect.

Code for Solution 2:

// Redirect to custom thank you page
add_action('woocommerce_thankyou', 'redirect_to_custom_thankyou', 1);
function redirect_to_custom_thankyou($order_id) {
    if (!$order_id) return;
    
    // Prevent multiple redirects
    if (isset($_GET['redirected'])) return;
    
    // Redirect to custom page with order ID
    $redirect_url = add_query_arg(
        array(
            'order_id' => $order_id,
            'redirected' => '1'
        ),
        home_url('/order-confirmation/')
    );
    
    wp_safe_redirect($redirect_url);
    exit;
}

Then create a new page in WordPress called"Thank You" with slug /order-confirmation/ and add this shortcode to it:

// Add shortcode for custom thank you page
add_shortcode('custom_order_thanks', 'display_custom_order_thanks');
function display_custom_order_thanks() {
    if (!isset($_GET['order_id'])) {
        return '<p>Invalid order.</p>';
    }
    
    $order_id = intval($_GET['order_id']);
    $order = wc_get_order($order_id);
    
    if (!$order) {
        return '<p>Order not found.</p>';
    }
    
    ob_start();
    ?>
    <div class="custom-thank-you-page" style="text-align:center; padding:50px 20px; max-width:600px; margin:0 auto;">
        <div style="font-size:60px; color:#28a745; margin-bottom:20px;">✓</div>
        <h1 style="color:#333; margin-bottom:20px;">شكراً لك!</h1>
        <p style="font-size:20px; color:#777; margin-bottom:30px;">تم استلام طلبك بنجاح</p>
        
        <div style="background:#f8f9fa; padding:30px; border-radius:8px; margin-bottom:30px;">
            <p style="font-size:18px; margin:10px 0;"><strong>رقم الطلب:</strong> <?php echo $order->get_order_number(); ?></p>
            <p style="font-size:16px; margin:10px 0; color:#777;">الحالة: <?php echo wc_get_order_status_name($order->get_status()); ?></p>
        </div>
        
        <p style="font-size:16px; color:#777; line-height:1.6; margin-bottom:30px;">
            طلبك الآن قيد المعالجة. سنرسل لك رسالة تأكيد مع جميع التفاصيل عبر البريد الإلكتروني.<br>
            يمكنك متابعة حالة طلبك في أي وقت من خلال حسابك.
        </p>
        
        <div>
            <a href="<?php echo wc_get_account_endpoint_url('orders'); ?>" class="button" style="display:inline-block; padding:15px 40px; background:#28a745; color:#fff; text-decoration:none; border-radius:5px; font-size:16px; margin:5px;">عرض طلباتي</a>
            <a href="<?php echo home_url('/shop/'); ?>" class="button" style="display:inline-block; padding:15px 40px; background:#007bff; color:#fff; text-decoration:none; border-radius:5px; font-size:16px; margin:5px;">متابعة التسوق</a>
        </div>
    </div>
    <?php
    return ob_get_clean();
}

Add shortcode [custom_order_thanks] to your Thank You page content.


Why this approach is better: Eliminates the currency conversion issue completely, Provides better user experience - no confusing numbers, Works perfectly with Fluxstore (the app will display the same simplified information), Much faster to implement than trying to fix REST API responses, More reliable long-term solution

Customers can always check their full order details with correct pricing in:

  • Confirmation email (works correctly)
  • My Account > Orders page (works correctly)
  • Order history in the app

Which solution would you prefer? You can even test both and choose which one works best for your customers!

 

Thank you. The currency conversion issue on the success page, order details, and order history has been resolved. I modified the application's source code files with the help of Cloud Code, and the problem is solved. However, I will find a solution for the remaining email issue soon.

Hello

Great to hear you solved the app issue with Cloud Code - well done!

About the email problem - I re-read your messages and I'm not 100% sure what exactly is wrong in the emails. Could you clarify:

  • Do emails show prices in base currency (SAR) instead of customer's currency (YER/YEROLD)?
  • Or is the currency symbol incorrect/missing?
  • Or both?

A screenshot of the email would be very helpful!

Meanwhile, here are solutions for both issues:

Issue 1: Email shows wrong currency or amounts

Add this code to file functions.php of the current wp theme to force WOOCS to use the order's currency in emails:

// Set correct currency for order emails
add_action('woocommerce_email_before_order_table', 'woocs_set_email_currency', 10, 4);
function woocs_set_email_currency($order, $sent_to_admin, $plain_text, $email) {
    global $WOOCS;
    
    if (!isset($WOOCS) || !is_object($WOOCS)) {
        return;
    }
    
    $order_currency = $order->get_currency();
    
    if ($order_currency && $order_currency !== $WOOCS->current_currency) {
        $WOOCS->set_currency($order_currency);
    }
}

Issue 2: Currency symbol is wrong (shows ﷼ instead of ر.ي)

Make sure you have this code to register custom currency symbols:

// Register custom Yemeni currencies
add_filter('woocommerce_currencies', 'add_yemeni_currencies');
function add_yemeni_currencies($currencies) {
    $currencies['YER'] = __('ريال يمني جديد', 'woocommerce');
    $currencies['YEROLD'] = __('ريال يمني قديم', 'woocommerce');
    return $currencies;
}

// Set currency symbols
add_filter('woocommerce_currency_symbol', 'add_yemeni_currency_symbols', 10, 2);
function add_yemeni_currency_symbols($currency_symbol, $currency) {
    switch($currency) {
        case 'YER':
            $currency_symbol = 'ر.ي'; // or 'ريال جديد'
            break;
        case 'YEROLD':
            $currency_symbol = 'ر.ي'; // or 'ريال قديم'
            break;
    }
    return $currency_symbol;
}

After adding the code:

  1. Place a test order with YER or YEROLD
  2. Check the confirmation email
  3. Let me know if it's fixed or send me a screenshot

Looking forward to your feedback!

Thank you for your help.

I am facing an issue with the order confirmation email. When a customer places an order, the email message is sent, but the currency amount is not converted correctly.

For example, the default currency is Saudi Riyal (SAR). If the customer selects Yemeni Riyal (new), the order details and order history display the correct Yemeni currency and converted amount. However, in the email message, the currency name appears as Yemeni Riyal, but the numeric amount is still the original Saudi Riyal value and not converted according to the exchange rate.

In short, the currency label changes, but the price value remains in the default currency in the email.

Hello my friend, I'm happy to tell you that the problem has been solved for all pages, and the currency is now changing everywhere: on the website, in the app, on the success page, in the orders, in the order details—everything is 100% working. Thank you, brother. Of course, all of this was made possible with the help of Cloud Code. If anyone else is facing the same problem, please share the solution.
The secret to success:

The problem was that the app was sending the currency but without the converted prices, as WooCommerce was calculating from the database.

The solution was to send the converted prices directly with the order!
Final edited files:
Only two files were modified:
  1. lib/models/entities/order.dartorder_FIXED.dart
  2. lib/frameworks/woocommerce/services/woo_commerce.dartwoo_commerce_FIXED_v2.dart
Greetings to you

Hello

Excellent work!

Huge thanks for the cooperation and for sharing the solution with the community - this helps everyone!

Wishing you massive profits and great success for your business in New 2026 Year!

Happy New Year!  🎉💎📈 🤝