# Version: 1.1.0-41ac055
WooCommerce JOSE Symmetric Encryption Integration

This is a WooCommerce plugin for integrating JOSE (JSON Object Signing and Encryption) symmetric encryption for secure communication with payment gateways. This plugin supports AES-256-GCM encryption and HMAC SHA-256 signing, enabling secure transactions between WooCommerce and your payment processor.
Features

    Secure payment integration using JOSE symmetric encryption.

    Supports AES-256-GCM encryption and HMAC SHA-256 signing.

    Easy integration with WooCommerce.

    Handles encryption and signing keys securely.

    Configurable options for merchant_id, client_id, encryption key, and signing key.

Installation

    Install the Plugin:

        Download the plugin files.

        Upload the plugin folder to the /wp-content/plugins/ directory of your WordPress installation.

        Alternatively, upload the .zip file through the WordPress admin panel under Plugins > Add New > Upload Plugin.

    Activate the Plugin:

        Go to the WordPress dashboard.

        Navigate to Plugins > Installed Plugins.

        Find the plugin and click Activate.

Configuration
Settings

Once the plugin is activated, configure the plugin settings by following these steps:

    Go to WooCommerce Settings:

        Navigate to WooCommerce > Settings > Payment Gateways.

        Select the BillDesk payment gateway (or the appropriate name for your setup).

    Configure the Required Fields:

        Merchant ID: Enter the merchant ID provided by the payment processor.

        Client ID: Enter the client ID provided by the payment processor.

        JOSE Encryption Key ID: Enter the ID for the JOSE encryption key (used for AES-GCM encryption).

        JOSE Signing Key ID: Enter the ID for the JOSE signing key (used for HMAC SHA-256 signing).

        JOSE Encryption Key: Enter the base64-encoded encryption key.

        JOSE Signing Key: Enter the base64-encoded signing key.

        Item Code: Enter the item code to identify the transaction.

        Payment Categories: Define payment categories for your transactions.

        Environment: Choose between UAT or PROD environments.

        Retry Count: Define the retry count in case of failed transactions.

    Save Changes:

        Once all the fields are configured, click Save Changes to apply your settings.

Validation

The following fields are mandatory for proper functioning:
    
    Merchant ID

    Client ID

    JOSE Encryption Key ID

    JOSE Signing Key ID

    JOSE Encryption Key

    JOSE Signing Key

These fields must be filled out in the WooCommerce payment settings for the plugin to work properly.
Testing Connectivity

    Go to the WooCommerce payment gateway settings page.

    Click on Test Connectivity to ensure the connection to the payment gateway is working correctly.

    If successful, a message will be displayed confirming the connection.

    If there’s an error, details will be shown, and you can troubleshoot based on the error message.


