Contents

Chapter 4. Understanding PaddleSubs

How Paddle Customers Become Joomla Users

Paddle knows its customers by email address. When Paddle tells your site about a customer, PaddleSubs connects them to a Joomla account:

  1. If the customer is already connected to an account, PaddleSubs uses it, and records the email address if it has changed in Paddle.

  2. Otherwise, if exactly one Joomla account has the same email address, the customer is connected to it. That is what happens when a logged-in visitor buys: PaddleSubs fills their account's address into the checkout.

  3. Otherwise, PaddleSubs creates a Joomla account for them, with the email address as the username and a random password, in the New User Registration Group set in Users → Options. A paying customer isn't someone asking to register, so the account is active straight away, whatever Allow User Registration and New User Account Activation say, and Joomla sends no registration email. PaddleSubs sends its own welcome email instead, with the username and a link to the Choose Your Password page. A customer who bought as a guest is also signed in to the account on the Purchase Complete page, with limits until they choose a password, since Paddle doesn't verify the email address.

Paddle tells your site about a new customer (customer.created) before the purchase, so the account normally exists by the time the purchase is processed. If that notification failed or comes late, the purchase creates the account itself in the same way, so it is never held for want of one.

One Joomla account can be connected to several Paddle customers (for example when someone has bought with two email addresses), but PaddleSubs never decides that on its own. If the email address matches an account that is already connected to a different Paddle customer, or matches more than one account, PaddleSubs records a customer conflict and gives no access until it is resolved. It is one conflict for that customer and account, however many of Paddle's notifications about the checkout met them. Two emails go out, from the next run of the PaddleSubs - Process webhooks task:

  • The customer receives, at the address Paddle has for them now, a link that is valid for 48 hours and can be used once. They log in to the Joomla account the purchase belongs to (its email address doesn't need to match) and confirm on the claim page; the Paddle customer is then connected to that account.

  • Every administrator who can manage PaddleSubs and receives system emails gets an alert, with a link to the Needs Attention page, where you can connect the customer to an account yourself.

The purchase that was set aside while the conflict was open is not lost. As soon as the customer claims it, or you connect them on the Needs Attention page, PaddleSubs processes it again and the customer gets their access.

Tip

Ask customers to log in before they buy. The product page says who they are buying as, and links to the login page for visitors who aren't logged in.

Deleting a Joomla account deletes everything PaddleSubs keeps for it: its Access Subscriptions, licenses and the sites activated on them, its connection to its Paddle customers, and any conflict or purchase on hold that belongs to it. Only the transactions stay, as the record of what was paid. If the customer comes back, they start fresh with a new account. Deleting the account doesn't cancel anything in Paddle: if the customer still has a subscription, it is up to them to cancel it. A renewal that arrives after the account is gone is held on Needs Attention, where you can dismiss it.