Shopware 5

Shopware 5

This guide describes how to integrate Sezzle into your Shopware 5 website so that you can provide Sezzle as a payment option for your customers. Additionally, it includes steps to upgrade existing integrations to the latest version of the plugin.

Sezzle's Shopware 5 plugin can be Download from github.

After integrating Sezzle, your site will:

  1. Offer Sezzle as a payment option on the checkout page.
  2. Refund Sezzle payments from your Shopware 5 backend.
  3. Authorize and capture payments.
  4. Offer instant and delayed capture.

Integration Steps Overview

  1. Install and configure the Sezzle Shopware 5 Plugin
  2. Test your integration
  3. (Optional) Sandbox Testing

Before You Begin

  1. You should have a Sezzle merchant account.
  • Please visit our signup page if you don't have an account.
  1. Make sure you have the following Sezzle details handy.

US/CA

EU

  1. Familiarize yourself with the transaction flow when buying with Sezzle.

Install the Sezzle Shopware 5 Plugin

In the following section, [Shopware] refers to your Shopware 5 root directory.

Using the Composer

Go to the Shopware 5 installation directory, then run the below commands:

  1. Open terminal and navigate to Shopware root path.
  2. Run the below command for the adding the plugin into your codebase:
    composer require sezzle/shopware5

Manual Method

  1. Download the .zip or tar.gz file from Sezzle's github repository.
  2. Unzip the file.
  3. Navigate to Shopware [Shopware]/custom/plugins/ either through SFTP or SSH.
  4. Copy SwagPaymentSezzle directory from unzipped folder to [Shopware]/custom/plugins/.
  5. Log in to Shopware 5 Backend and navigate to Configuration > Plugin Manager > Management > Installed.
  6. Find Sezzle from the Uninstalled list and click on the + button to install the plugin.
  7. Once installed, you will see Sezzle under Inactive list. Click on the x button to activate the plugin.
  8. After successful activation, you will be able to see Sezzle under Configuration > Payment Methods.

Upgrade the Shopware 5 Plugin

Using the Composer

  1. Change the version number of the sezzle/sezzlepay inside composer.json.
  2. Open terminal and navigate to Shopware root path.
  3. Run the following command for the updating the plugin to a newer version:
    composer update sezzle/sezzlepay

Manual Method

  1. Download the .zip or tar.gz file from Sezzle's github repository.
  2. Unzip the file.
  3. Delete the contents from [Shopware]/custom/plugins/SwagPaymentSezzle.
  4. Copy the contents of SwagPaymentSezzle directory from unzipped folder to [Shopware]/custom/plugins/SwagPaymentSezzle/.
  5. Log in to Shopware Backend and navigate to Configuration > Cache/performance.
  6. Flush the cache storage by selecting Clear shop cache.

Configure Sezzle

Payment Configuration

  • Make sure you have the Merchant UUID and the API Keys from the Sezzle Merchant Dashboard (US/CA) or Sezzle Merchant Dashboard (EU). You must be registered with Sezzle (US/CA) or Sezzle (EU) to access the Merchant Dashboard.
  • Navigate to Customers > Payments > Sezzle > Settings in your Shopware Backend.
  • Enable Sezzle by checking the Enable for this shop checkbox.
  • Set the Public Key and Private Key.
  • For testing, enable the Sandbox mode by checking the Enable sandbox checkbox.
  • You can also verify your API Keys by clicking on the Test API Settings button.
  • Set the Merchant UUID.
  • Set the Merchant Location as per the store origin.
  • Check the Enable Tokenization checkbox to enable customer tokenization in the Sezzle checkout. If the customer agrees to be tokenized, then future checkouts for this customer will not require a redirect to Sezzle. See Customer tokenization
  • Set Payment Action as Authorize only for doing payment authorization only and Authorize and Capture for doing instant capture.
  • Check the Enable Widget in PDP checkbox to add the widget script and the Sezzle Widget Modal to the Product Display Page.
  • Check the Enable Widget in Cart checkbox to add the widget script and the Sezzle Widget Modal to the Cart Page.
  • Check the Display errors checkbox for showing up Sezzle related error code in the web URL on failure.
  • Set Logging to ERROR to log only error messages or ALL to log all messages, including errors, warnings, and notices.
  • Save the settings and clear the cache.
    sezzle settingssezzle settings

Your store is now ready to accept payments through Sezzle.

Frontend Functionality

  • If you have successfully installed the Sezzle plugin, then Sezzle will be included as a payment method in the checkout page.
  • Select Sezzle and continue.
  • Once you click Complete Payment, you will be redirected to Sezzle Checkout to complete the checkout. Note: If your account is already tokenized, skip the next two steps as you will not be redirected to Sezzle.
  • [Optional] On the final page of Sezzle Checkout, check the Approve {Store Name} to process payments from your Sezzle account for future transactions. You may revoke this authorization at any time in your Sezzle Dashboard to tokenize your account.
  • Finally, click on Complete Order to complete your purchase.
  • On successful order placement, you will be redirected to the order confirmation page.
    shopware5 checkoutshopware5 checkout

Capture Payment

  • If Payment Action is set to Authorize and Capture, capture will be performed instantly from the plugin after order is created and validated in Shopware.
  • If Payment Action is set to Authorize, capture needs to be performed manually from the Shopware backend. Follow the below steps to capture.
  • Go the order and click on Sezzle tab.
  • Enter a value in Amount field and click on Capture to capture the payment in Sezzle.

Refund Payment

  • Go the order and click on Sezzle tab.
  • Enter a value in Amount field and click on Refund to refund the payment in Sezzle.

Release Payment

  • Go the order and click on Sezzle tab.
  • Enter a value in Amount field and click on Release to release the payment in Sezzle.

Order Verification in Shopware Backend

Merchants should always check the payment status and amount of all orders. The following steps ensure that each action has been completed as expected.

  • Log in to Shopware admin and navigate to Customers > Orders.
    shopware5 ordersshopware5 orders
  • Proceed into the corresponding order.
  • Payment is successfully captured by Sezzle when:
  • Current Payment Status is Completely Paid.
  • Capture Amount equals the Auth Amount.
  • Payment is only authorized when:
  • Current Payment Status is Open.
  • Auth Amount equals the Order Amount.
  • Capture Amount equals 0.
  • Payment is refunded when:
  • Current Payment Status is Re-crediting.
  • Refund Amount is equal to or less than the Capture Amount.
  • Payment is released when:
  • Current Payment Status is The process is cancelled for a full release or Open for a partial release.
  • Amount will be deducted from Auth Amount and should appear in Released Amount.
    shopware5 order_sezzle_tabshopware5 order_sezzle_tab

Order Verification in Sezzle Merchant Dashboard

  • Log in to Sezzle Merchant Dashboard and navigate to Orders.
  • Proceed into the corresponding order.
  • Payment successfully captured has a status of Approved.
  • Payment authorized but not captured has a status of Authorized, uncaptured.
  • Payment refunded has a status of Refunded or Partially refunded.
  • Payment released or not captured before the authorization expired has a status of Deleted due to checkout not being captured before expiration.

Customer Tokenization Details

  • Log in to Shopware Backend and navigate to Customers > Customers.
  • Select customer to view tokenization details.
  • Sezzle Customer UUID, Sezzle Customer UUID Expiry and Sezzle Customer UUID Status will appear under Free text fields.
    shopware5 customershopware5 customer

Shopware 5 Sandbox Testing

  • In the Sezzle settings page of your Shopware Backend, enter the Sandbox API Keys from your Sezzle Sezzle Merchant Dashboard (US/CA) or Sezzle Merchant Dashboard (EU) and check the Enable sandbox checkbox, then save the configuration. Make sure you are doing this on your dev/staging website.
  • On your website, add an item to the cart, then proceed to Checkout and select Sezzle as the payment method.
  • Once you click Complete Payment, you will be redirected to Sezzle Checkout to complete the checkout. Note: If your account is already tokenized, skip the next four steps as you will not be redirected to Sezzle.
  • Sign In or Sign Up to continue.
  • Enter the payment details using test data, then move to final page.
  • [Optional] Check the Approve {Store Name} to process payments from your Sezzle account for future transactions. You may revoke this authorization at any time in your Sezzle Dashboard to tokenize your account.
  • Finally, click on Complete Order to complete your purchase.
  • Sandbox testing is complete. You can log in to your Sezzle Merchant Sandbox Dashboard to see the test order you just placed.

Shopware 5 Live Checkout

  1. In the Sezzle settings page of your Shopware Backend, enter the API Keys from your Sezzle Merchant Dashboard (US/CA) or Merchant Dashboard (EU) and uncheck the Enable sandbox checkbox, then save the configuration.
  2. On your website, add an item to the cart, then proceed to Checkout and select Sezzle as the payment method.
  3. Click Complete Payment.
  4. If you are redirected to the Sezzle checkout page, your integration is complete. Congratulations!
    sezzle checkoutsezzle checkout
  5. Warning Don't complete the payment. Your checkout is now live, so you will be charged if you complete it.

Troubleshooting

  • Sezzle plugin creates logs of Sezzle action.
  • In the event that Merchant Success and Support teams are unable to resolve any issue, the Merchant may request that these logs be forwarded to the Platform Integrations team for further troubleshooting..
  • Logs are named as plugin_dev-<current-date>.log. To facilitate troubleshooting, we recommend sending the core_dev-<current-date>.log as well..
  • Logs can be find in [Shopware]/var/log/.