SELECT 
  cscart_payments.*, 
  cscart_payment_descriptions.*, 
  IF (
    ISNULL(cscart_addons.status), 
    "A", 
    cscart_addons.status
  ) AS processor_status, 
  cscart_payment_processors.type AS processor_type, 
  cscart_payment_processors.processor_script AS processor_script 
FROM 
  cscart_payments 
  LEFT JOIN cscart_payment_descriptions ON cscart_payment_descriptions.payment_id = cscart_payments.payment_id 
  AND cscart_payment_descriptions.lang_code = 'es' 
  LEFT JOIN cscart_payment_processors ON cscart_payment_processors.processor_id = cscart_payments.processor_id 
  LEFT JOIN cscart_addons ON cscart_payment_processors.addon = cscart_addons.addon 
  LEFT JOIN cscart_storefronts_payments AS storefronts_payments ON storefronts_payments.payment_id = cscart_payments.payment_id 
WHERE 
  cscart_payments.status = 'A' 
  AND (
    cscart_payments.usergroup_ids = '' 
    OR FIND_IN_SET(
      0, cscart_payments.usergroup_ids
    ) 
    OR FIND_IN_SET(
      1, cscart_payments.usergroup_ids
    )
  ) 
  AND (
    storefronts_payments.storefront_id = 1 
    OR storefronts_payments.storefront_id IS NULL
  ) 
HAVING 
  processor_status = 'A' 
ORDER BY 
  cscart_payments.position

Query time 0.00070

JSON explain

{
  "query_block": {
    "select_id": 1,
    "having_condition": "processor_status = 'A'",
    "nested_loop": [
      {
        "table": {
          "table_name": "storefronts_payments",
          "access_type": "system",
          "possible_keys": ["PRIMARY", "idx_storefront_id"],
          "rows": 0,
          "filtered": 0,
          "const_row_not_found": true
        }
      },
      {
        "read_sorted_file": {
          "filesort": {
            "sort_key": "cscart_payments.position",
            "table": {
              "table_name": "cscart_payments",
              "access_type": "ALL",
              "possible_keys": ["c_status"],
              "rows": 12,
              "filtered": 100,
              "attached_condition": "cscart_payments.`status` = 'A' and (cscart_payments.usergroup_ids = '' or find_in_set(0,cscart_payments.usergroup_ids) or find_in_set(1,cscart_payments.usergroup_ids))"
            }
          }
        }
      },
      {
        "table": {
          "table_name": "cscart_payment_descriptions",
          "access_type": "eq_ref",
          "possible_keys": ["PRIMARY"],
          "key": "PRIMARY",
          "key_length": "9",
          "used_key_parts": ["payment_id", "lang_code"],
          "ref": ["live_clonned.cscart_payments.payment_id", "const"],
          "rows": 1,
          "filtered": 100,
          "attached_condition": "trigcond(cscart_payment_descriptions.lang_code = 'es')"
        }
      },
      {
        "table": {
          "table_name": "cscart_payment_processors",
          "access_type": "eq_ref",
          "possible_keys": ["PRIMARY"],
          "key": "PRIMARY",
          "key_length": "3",
          "used_key_parts": ["processor_id"],
          "ref": ["live_clonned.cscart_payments.processor_id"],
          "rows": 1,
          "filtered": 100
        }
      },
      {
        "table": {
          "table_name": "cscart_addons",
          "access_type": "eq_ref",
          "possible_keys": ["PRIMARY"],
          "key": "PRIMARY",
          "key_length": "98",
          "used_key_parts": ["addon"],
          "ref": ["live_clonned.cscart_payment_processors.addon"],
          "rows": 1,
          "filtered": 100,
          "attached_condition": "trigcond(trigcond(cscart_payment_processors.addon is not null))"
        }
      }
    ]
  }
}

Result

payment_id company_id usergroup_ids position status template processor_id processor_params a_surcharge p_surcharge tax_ids localization payment_category payment description instructions surcharge_title lang_code processor_status processor_type processor_script
16 0 0 0 A views/orders/components/payments/cc_outside.tpl 121 a:10:{s:8:"currency";s:3:"MXN";s:12:"order_prefix";s:3:"py_";s:16:"new_order_status";s:1:"O";s:7:"account";s:37:"sb-4tdqj43121838@business.example.com";s:9:"item_name";s:13:"Fundamentally";s:8:"username";s:42:"sb-4tdqj43121838_api1.business.example.com";s:8:"password";s:16:"MJR37TJUTP4EGJ5H";s:21:"authentication_method";s:9:"signature";s:9:"signature";s:56:"ArYvfDy69r5yXWRGym1PAoksW6FZAO0jEpP0-HSb9PHWceov-efXjJ4e";s:4:"mode";s:4:"test";} 1.234 10.000 tab1 PayPal es A P paypal.php
17 0 0 0 A addons/stripe/views/orders/components/payments/stripe.tpl 125 a:11:{s:9:"is_stripe";s:1:"Y";s:7:"is_test";s:1:"N";s:10:"webhook_id";s:27:"we_1Rd5OpQUEyLwSxfkATTTrB7a";s:18:"webhook_secret_key";s:38:"whsec_noxKXof1tkhcTSAFleAq1CbWl8GzwBfO";s:15:"publishable_key";s:107:"pk_test_51SAwx2CKDoMqgsNRQOlWxdyGYTGIU3QfXZZydOhOgoSVVGQMmPx6j8kYXQMm5sZ74gPkynloaaP17HmymdENUNh7002XuH527B";s:10:"secret_key";s:107:"sk_test_51SAwx2CKDoMqgsNRjKvcsEsxaQqJ1pkUYBta5ZxXaKoRZKujBwrJKQGvl3d4jcAqtnSt0hYM74fdPMr3G8GNY75j00R2Nkwb8v";s:19:"merchant_identifier";s:0:"";s:7:"country";s:2:"MX";s:8:"currency";s:3:"MXN";s:12:"payment_type";s:4:"card";s:19:"show_payment_button";s:1:"Y";} 0.000 0.000 tab1 Stripe es A P stripe.php
2 0 0 2 A views/orders/components/payments/phone.tpl 0 0.000 0.000 tab3 Phone ordering Call 555-0123 <h2>When I should use phone ordering?</h2><p>Order by phone is useful when regular payment methods like credit card are unavailable or considered insecure.</p><p>Our operators are happy to take your order per phone every business day from 9 a.m. to 5 p.m. UTC.</p> es A
14 0 0 3 A addons/paypal_commerce_platform/views/orders/components/payments/paypal_commerce_platform.tpl 114 a:14:{s:27:"is_paypal_commerce_platform";s:1:"Y";s:10:"created_at";s:10:"1750367193";s:12:"access_token";s:0:"";s:11:"expiry_time";s:1:"0";s:7:"bn_code";s:2:"MX";s:8:"payer_id";s:37:"sb-4tdqj43121838@business.example.com";s:9:"client_id";s:80:"AZd0FSbbbbN8t6-vDL_XDovxzjeZAvtFUJK-_wc5p-nktcERCyr5ViNV72tzoXjjHAXI57fVcJW45kiX";s:6:"secret";s:80:"AZd0FSbbbbN8t6-vDL_XDovxzjeZAvtFUJK-_wc5p-nktcERCyr5ViNV72tzoXjjHAXI57fVcJW45kiX";s:4:"mode";s:4:"test";s:8:"currency";s:3:"MXN";s:25:"delay_disburse_of_payouts";s:1:"N";s:15:"disable_funding";a:11:{s:4:"card";s:1:"0";s:6:"credit";s:6:"credit";s:5:"venmo";s:1:"0";s:4:"sepa";s:1:"0";s:10:"bancontact";s:1:"0";s:3:"eps";s:1:"0";s:7:"giropay";s:1:"0";s:5:"ideal";s:1:"0";s:6:"mybank";s:1:"0";s:3:"p24";s:1:"0";s:6:"sofort";s:1:"0";}s:12:"disable_card";a:7:{s:4:"visa";s:1:"0";s:10:"mastercard";s:1:"0";s:4:"amex";s:1:"0";s:8:"discover";s:1:"0";s:3:"jcb";s:1:"0";s:3:"elo";s:1:"0";s:5:"hiper";s:1:"0";}s:5:"style";a:3:{s:5:"shape";s:4:"rect";s:5:"color";s:4:"gold";s:6:"height";s:2:"55";}} 0.000 0.000 tab1 PayPal Commerce Platform es A P paypal_commerce_platform.php