• Resolved 7thcircle

    (@7thcircle)


    I am selling virtual products and don’t collect address information and am getting the below error on the first attempt from all customers until using square.

    I create users on my site, and send them an invoice, so I must manually enter a billing country even though they are entering their zip code

    Square Payment Failed (Status code INVALID_ENUM_VALUE: “ is not a valid enum value for billing_address.country.) Order status changed from Pending payment to Failed.

Viewing 15 replies - 1 through 15 (of 16 total)
  • Thread Starter 7thcircle

    (@7thcircle)

    BUMP since it’s been 11 days. Bueller….

    Hi there @7thcircle,

    Sorry about the wait on this. This error:

    Square Payment Failed (Status code INVALID_ENUM_VALUE: “ is not a valid enum value for billing_address.country)

    means that Square is rejecting the transaction as it is not receiving a transaction value that aligns with the currency for your country.

    This could be caused by a conflict from a third-party theme or plugin, or by mismatched settings on your website.

    First, I recommend checking that both your Square account and WooCommerce site are using the same currency. You can check and change the currency for your WooCommerce site by going to WooCommerce > Settings > General. If you are unsure of what currency your Square account uses, you can contact Square customer support and they will be able to tell you.

    If your WooCommerce site is using the same currency as your Square account already, then I would suggest some theme and plugin conflict tests. We have a guide on how to test for conflicts here:

    https://docs.woocommerce.com/document/woocommerce-self-service-guide/#section-4

    Since those tests will impact the look and functionality of your site, I recommend doing them on a staging site. If you don’t already have a staging site set up, check with your hosting company as many offer this as part of their packages. Otherwise, you can use a free plugin such as WP Staging to set one up.

    Let me know how it goes!

    Thread Starter 7thcircle

    (@7thcircle)

    The site was set to Geolocate. Forcing the site to use the store location as the default customer location fails with a bad zip code. The only fix is to manually enter billing zip, country, and state into the users I create, but this causes the zip field to be hidden on the payment form. I resolved that with the css

    /* Square Zip Code Display */
    .woocommerce #payment div.payment_method_square_credit_card .wc-square-credit-card-card-postal-code-parent.hidden {
    display: block;
    }

    The issue does not present itself on new orders from new customers, and does not happen on new orders from logged in customers. It is only when I send a invoice since I allow them to pay without signing in.

    I have tried this with Storefront as my theme as well as twentysixteen, I generally run Genesis.

    madeincosmos

    (@madeincosmos)

    Automattic Happiness Engineer

    Hi @7thcircle,

    Thanks for testing this. We’re not familiar with other reports of the same error, so we’ll need to check this in details.

    Can you please send the System Status Report so that we can check the site setup and checkout page? You can find it under WooCommerce > Status in WP Admin.

    Thanks!

    Thread Starter 7thcircle

    (@7thcircle)

    
    ### WordPress Environment ###
    
    WordPress address (URL): https://www.attogtech.com
    Site address (URL): https://www.attogtech.com
    WC Version: 3.7.0
    REST API Version: ? 1.0.2
    Log Directory Writable: ?
    WP Version: 5.2.3
    WP Multisite: –
    WP Memory Limit: 512 MB
    WP Debug Mode: –
    WP Cron: –
    Language: en_US
    External object cache: –
    
    ### Server Environment ###
    
    Server Info: Apache
    PHP Version: 7.1.24 - We recommend using PHP version 7.2 or above for greater performance and security. How to update your PHP version
    PHP Post Max Size: 64 MB
    PHP Time Limit: 300
    PHP Max Input Vars: 1000
    cURL Version: 7.19.7
    NSS/3.27.1
    
    SUHOSIN Installed: –
    MySQL Version: 5.6.41-84.1
    Max Upload Size: 10 MB
    Default Timezone is UTC: ?
    fsockopen/cURL: ?
    SoapClient: ?
    DOMDocument: ?
    GZip: ?
    Multibyte String: ?
    Remote Post: ?
    Remote Get: ?
    
    ### Database ###
    
    WC Database Version: 3.7.0
    WC Database Prefix: wp_
    MaxMind GeoIP Database: ?
    Total Database Size: 8.36MB
    Database Data Size: 6.71MB
    Database Index Size: 1.65MB
    wp_woocommerce_sessions: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
    wp_woocommerce_api_keys: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
    wp_woocommerce_attribute_taxonomies: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
    wp_woocommerce_downloadable_product_permissions: Data: 0.02MB + Index: 0.06MB + Engine InnoDB
    wp_woocommerce_order_items: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
    wp_woocommerce_order_itemmeta: Data: 0.05MB + Index: 0.03MB + Engine InnoDB
    wp_woocommerce_tax_rates: Data: 0.02MB + Index: 0.06MB + Engine InnoDB
    wp_woocommerce_tax_rate_locations: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
    wp_woocommerce_shipping_zones: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
    wp_woocommerce_shipping_zone_locations: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
    wp_woocommerce_shipping_zone_methods: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
    wp_woocommerce_payment_tokens: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
    wp_woocommerce_payment_tokenmeta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
    wp_woocommerce_log: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
    wp_blc_filters: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
    wp_blc_instances: Data: 0.09MB + Index: 0.05MB + Engine InnoDB
    wp_blc_links: Data: 0.27MB + Index: 0.06MB + Engine InnoDB
    wp_blc_synch: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
    wp_cf_forms: Data: 0.16MB + Index: 0.02MB + Engine InnoDB
    wp_cf_form_entries: Data: 0.02MB + Index: 0.06MB + Engine InnoDB
    wp_cf_form_entry_meta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
    wp_cf_form_entry_values: Data: 0.02MB + Index: 0.05MB + Engine InnoDB
    wp_cf_pro_messages: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
    wp_cf_queue_failures: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
    wp_cf_queue_jobs: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
    wp_cf_tracking: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
    wp_cf_tracking_meta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
    wp_commentmeta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
    wp_comments: Data: 0.05MB + Index: 0.09MB + Engine InnoDB
    wp_failed_jobs: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
    wp_links: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
    wp_mailchimp_carts: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
    wp_options: Data: 1.33MB + Index: 0.08MB + Engine InnoDB
    wp_postmeta: Data: 1.41MB + Index: 0.30MB + Engine InnoDB
    wp_posts: Data: 2.48MB + Index: 0.06MB + Engine InnoDB
    wp_queue: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
    wp_smush_dir_images: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
    wp_termmeta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
    wp_terms: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
    wp_term_relationships: Data: 0.05MB + Index: 0.02MB + Engine InnoDB
    wp_term_taxonomy: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
    wp_usermeta: Data: 0.06MB + Index: 0.03MB + Engine InnoDB
    wp_users: Data: 0.02MB + Index: 0.05MB + Engine InnoDB
    wp_wc_download_log: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
    wp_wc_product_meta_lookup: Data: 0.02MB + Index: 0.09MB + Engine InnoDB
    wp_wc_tax_rate_classes: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
    wp_wc_webhooks: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
    wp_woocommerce_square_customers: Data: 0.00MB + Index: 0.00MB + Engine MyISAM
    wp_yikes_easy_mc_forms: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
    
    ### Security ###
    
    Secure connection (HTTPS): ?
    Hide errors from visitors: ?
    
    ### Active Plugins (25) ###
    
    Akismet Anti-Spam: by Automattic – 4.1.2
    All In One SEO Pack: by Michael Torbert – 3.2.9
    Amazon Affiliate Tag: by Maxime Bridon – 1.1.0.3
    Autoptimize: by Frank Goossens (futtta) – 2.5.1
    BackWPup: by Inpsyde GmbH – 3.6.10
    Broken Link Checker: by ManageWP – 1.11.8
    Caldera Forms: by Caldera Labs – 1.8.7
    Classic Editor: by WordPress Contributors – 1.5
    Delete Expired Transients: by WebAware – 2.0.7
    GDPR Compliance for Mailchimp: by YIKES
    Inc. – 1.3.3
    
    Genesis Connect for WooCommerce: by StudioPress – 1.1.0 – Not tested with the active version of WooCommerce
    Genesis Simple Share: by StudioPress – 1.1.5
    Genesis Title Toggle: by Bill Erickson – 1.9.0
    Google Authenticator: by Ivan Kruchkoff – 0.52
    Kadence WooCommerce Email Designer: by Kadence Themes – 1.3.3
    MainWP Child: by MainWP – 4.0.2
    PGP Key Generator: by wp2pgpmail – 1.09
    Simple Social Icons: by StudioPress – 3.0.1
    WooCommerce Google Analytics Integration: by WooCommerce – 1.4.14
    WooCommerce Square: by WooCommerce – 2.0.4
    WooCommerce: by Automattic – 3.7.0
    Smush: by WPMU DEV – 3.2.4
    WP Super Cache: by Automattic – 1.7.0
    Easy Forms for Mailchimp: by YIKES
    Inc. – 6.5.5
    
    YITH WooCommerce Name Your Price: by YITH – 1.1.7
    
    ### Inactive Plugins (0) ###
    
    ### Dropin Plugins (3) ###
    
    advanced-cache.php: advanced-cache.php
    db-error.php: db-error.php
    maintenance.php: maintenance.php
    
    ### Must Use Plugins (25) ###
    
    7th Circle Designs Branding: by Eric Leuthardt - 7th Circle Designs – 2.1.1
    Admin Notification Cleanup: by Eric Leuthardt - 7th Circle Designs – 1.2.3
    Class Notes Tweaks: by Eric Leuthardt - 7th Circle Designs – 1.3.10
    Client Management: by Eric Leuthardt - 7th Circle Designs – 1.1.0
    Custom Comment Settings: by Eric Leuthardt - 7th Circle Designs – 2.4.0
    Custom Configuration Settings for SMTP Email: by Eric Leuthardt - 7th Circle Designs – 3.4.0
    Custom Editor and Post Settings: by Eric Leuthardt - 7th Circle Designs – 2.0.0
    Custom Layout Changes: by Eric Leuthardt - 7th Circle Designs – 2.4.1
    Custom Login Logo and Favicons: by Eric Leuthardt - 7th Circle Designs – 3.1.6
    Custom Reader Settings: by Eric Leuthardt - 7th Circle Designs – 2.3.4
    Custom Security Configurations: by Eric Leuthardt - 7th Circle Designs – 3.3.0
    Custom User Settings: by Eric Leuthardt - 7th Circle Designs – 2.0.1
    Disable Automatic Image Links: by Eric Leuthardt - 7th Circle Designs – 1.0.8
    Heartbeat Optimization: by Eric Leuthardt - 7th Circle Designs – 1.2.2
    Optimized SEO Settings: by Eric Leuthardt - 7th Circle Designs – 1.6.4
    Optimize WooCommerce Scripts: by Eric Leuthardt - 7th Circle Designs – 2.3.2
    RSS Branding and Customized Feeds: by Eric Leuthardt - 7th Circle Designs – 2.3.5
    WooCommerce auto image removal: by Eric Leuthardt - 7th Circle Designs – 1.1.1
    WooCommerce Checkout Cleanup: by Eric Leuthardt - 7th Circle Designs – 1.7.1
    WooCommerce Email Sender Adjustments: by Eric Leuthardt - 7th Circle Designs – 1.2.2
    WooCommerce Extras: by Eric Leuthardt - 7th Circle Designs – 1.3.2
    WooCommerce Freelancer Tweaks: by Eric Leuthardt - 7th Circle Designs – 2.1.4
    WooCommerce GDPR Add-ons: by Eric Leuthardt - 7th Circle Designs – 1.2.2
    WooCommerce Optional Related Products: by Eric Leuthardt - 7th Circle Designs – 1.1.0
    WooCommerce Price and Stock Adjustments: by Eric Leuthardt - 7th Circle Designs – 2.2.1
    
    ### Settings ###
    
    API Enabled: –
    Force SSL: –
    Currency: USD ($)
    Currency Position: left
    Thousand Separator: ,
    Decimal Separator: .
    Number of Decimals: 2
    Taxonomies: Product Types: external (external)
    grouped (grouped)
    simple (simple)
    variable (variable)
    
    Taxonomies: Product Visibility: exclude-from-catalog (exclude-from-catalog)
    exclude-from-search (exclude-from-search)
    featured (featured)
    outofstock (outofstock)
    rated-1 (rated-1)
    rated-2 (rated-2)
    rated-3 (rated-3)
    rated-4 (rated-4)
    rated-5 (rated-5)
    
    Connected to WooCommerce.com: –
    
    ### WC Pages ###
    
    Shop base: #54635 - /shop/
    Cart: #54636 - /cart/
    Checkout: #54637 - /checkout/
    My account: #54638 - /my-account/
    Terms and conditions: #54736 - /terms-of-service/
    
    ### Theme ###
    
    Name: Infinity Pro
    Version: 1.2.0
    Author URL: https://www.studiopress.com/
    Child Theme: ?
    Parent Theme Name: Genesis
    Parent Theme Version: 3.1.2
    Parent Theme Author URL: https://www.studiopress.com/
    WooCommerce Support: ?
    
    ### Templates ###
    
    Overrides: –
    
    ### Square ###
    
    Environment: Production
    Tokenization Enabled: ?
    Debug Mode: Off
    
    ### Action Scheduler ###
    
    Complete: 8
    Oldest: 2019-09-03 13:30:10 -0500
    Newest: 2019-09-25 14:15:06 -0500
    
    Pending: 2
    Oldest: 2019-10-01 14:00:11 -0500
    Newest: 2019-10-02 14:15:06 -0500
    
    Canceled: 0
    Oldest: –
    Newest: –
    
    In-progress: 0
    Oldest: –
    Newest: –
    
    Failed: 0
    Oldest: –
    Newest: –
    
    
    madeincosmos

    (@madeincosmos)

    Automattic Happiness Engineer

    Thank you for the System Status Report! I checked the checkout page at https://www.attogtech.com/checkout/ and can see there are only 3 fields in there – first name, last name and email address:

    https://cld.wthms.co/fVr4ZB

    When creating a payment in Square, it requires many different pieces of information, including customer billing and shipping address:

    https://developer.squareup.com/docs/api/connect/v2#endpoint-payments-createpayment

    Here the only piece of customer address we have access to is the zip code, and so the plugin returns an error when trying to process customer country, which is not present in this checkout form.

    Is there some reason why all standard billing address field are hidden on this page? You may want to double check this with Square support to make 100% sure, but as far as I know it’s not possible to process a payment with them online without passing them the full customer address.

    Cheers!

    Thread Starter 7thcircle

    (@7thcircle)

    Please see the original post. I am creating the user and populating the country.

    This is only an issue on existing users, not on new customers.

    Since these are virtual products I don’t need the address, and to be GDPR compliant should only collect the information that I need. Also, my customers will abandon their orders if I require them to give me irrelevant information. All that Square requires is the country and zip code.

    madeincosmos

    (@madeincosmos)

    Automattic Happiness Engineer

    Hi @7thcircle,

    Thank you for your explanation. That’s a tough case we have here. The error we’re seeing is for the billing country, and we don’t have any other reports of the same behavior from any other sites. I’m also unable to reproduce it on mine. I’m not sure how exactly you’re populating the country at the checkout after hiding the original field, but so far it looks that Square scripts are unable to read this value from there, which isn’t the case with standard WooCommerce checkout.

    Even though we’re unable to support custom coding, one thing we can do is to make 100% sure that this error doesn’t happen if we enable the standard checkout page back. We’ll need a test copy of your site to check this.

    Some hosting providers offer a one-click solution to create a staging site, so you may want to check this with yours. If they don’t, you can create a test copy using a free plugin called WP Staging:

    https://www.ads-software.com/plugins/wp-staging/

    As soon as you create a staging site, please open a support ticket at https://woocommerce.com/my-account/create-a-ticket/ and we’ll continue troubleshooting there.

    Thanks!

    Thread Starter 7thcircle

    (@7thcircle)

    I have a staging site, but as you are aware, square will only connect to a single site so it is hard to test that way. The problem with the info is it tries to verify the shipping info instead of the billing info. I have populated the user’s billing info in the user profile and I have done it when I create the manual order. The solution that works best is to also add custom css to make sure that the zip code field is not hidden on the square form.

    madeincosmos

    (@madeincosmos)

    Automattic Happiness Engineer

    That’s interesting! Can you please confirm if the product is marked as Virtual in WooCommerce? I just tested this on my site, and with the Virtual checkbox enabled WooCommerce will only pass the billing address to Square. Without it, it’s both billing and shipping.

    If this doesn’t help, we can try to connect your staging site to our own test Square account if you send us a support ticket, and see what happens when we try to place the order under different scenarios. As I mentioned, we won’t likely be able to help much with debugging the actual code, but we should at least able to narrow down possible causes.

    Cheers!

    Thread Starter 7thcircle

    (@7thcircle)

    YEs, the items are marked as virtual. When inspecting in Chrome / FF the shipping info is being confirmed instead of billing. I have updated to the new version this morning, and am now requiring all of my users to full out full information for all products to make this work, but this does run affoul of GDPR and soon CCPA.

    Plugin Support con

    (@conschneider)

    Engineer

    Hi there,

    We haven’t heard back from you in a while and based on your last message, thing seemed to work(?). Granted they were not ideal.
    So I’m going to mark this as resolved – if you have any further questions, you can start a new thread.

    Kind regards,

    Thread Starter 7thcircle

    (@7thcircle)

    You have not resolved the issue, I had to create a workaround. You have not heard from me since I was the last to respond and as is par for your support it takes several weeks to get a response.

    Plugin Support con

    (@conschneider)

    Engineer

    Hi again,

    Ok then let’s continue in our ticket system so we can take an in depth look. Create a staging site and open a support ticket at https://woocommerce.com/my-account/create-a-ticket/ and we’ll continue troubleshooting there.

    Kind regards,

    Thread Starter 7thcircle

    (@7thcircle)

    Ticket Submitted

    WooCommerce Support: Ticket #2477244

Viewing 15 replies - 1 through 15 (of 16 total)
  • The topic ‘Payment Failed (Status code INVALID_ENUM_VALUE: “ is not a valid enum value for’ is closed to new replies.