How It Works
From AMember Pro Manual
Contents |
Signup
The procedure for signing up a new customer/member is as follows:
- A user comes to the signup page (http://www.yoursite.com/amember/signup.php) and completes a signup form. User is asked to enter their first and last name and email address. They may also be asked to create a username and password. You can optionally enable username and/or password generation in the aMember Pro settings, in which case the user will be issued with an automatically generated username and/or password.
- You may add more fields to signup form if you wish.
- After completing the form, the user presses the "Signup" button. aMember now creates two new database records:
- a pending user record
- a pending payment record.
This does NOT give the user rights to enter. The pending payment record contains amount to be paid, subscription start and expiry dates, subscription type ordered and other related information. However this payment record is not marked as "paid".
Actual Payment
The user is redirected to payment system payment page where he will be asked for credit card info (or for other necessary payment information, depending on the payment method selected). The payment gateway (eg PayPal, 2Checkout or Authorize.Net) checks the information entered and makes the transaction.
- Once the transaction is completed successfully, the user will be redirected to the "thanks" page of aMember (http://www.yoursite.com/amember/thanks.php). If the transaction failed, user may be redirected to failed payment page (only if the payment system supports it : http://www.yoursite.com/amember/cancel.php ).
- In background, the payment system sends confirmation to aMember script that the payment process has been completed. The aMember script then marks the payment as "Paid" and sends a signup (welcome) email to the customer.
Account Expiration and Subscription Renewal
All members (even those who did not pay or whose payment has been failed) can access the aMember members page (http://www.yoursite.com/amember/member.php).
On this page they will see:
- Links to membership areas which they are allowed to access (is to which subscriptions are completed and not-expired)
- Logout link
- Link to update profile info/change password
- List of completed payments (if subscription is recurring, a subscription cancel link will be displayed near every active recurring subscription record)
- Controls to renew subscription or order another subscription type(product)
To add/renew a subscription, users must select a membership type, a payment method and press a button, then they are redirected to a payment system page and payment will be exactly the same as for initial signup. If a user already has a subscription to the same subscription type (product), the new subscription start and expiry dates will be calculated from the day when the existing subscription expires.
Protection
aMember can generate an authorization database for any number of protected destinations. For example, it can generate .htpasswd and .htgroup files, which are suitable for authorization on Unix platforms. There are also more advanced protection methods that allows to protect any type of content without changing it and providing HTML Login form for customers instead of popup login box.
aMember handles subscription expirations and expired members will not get access to protected areas. aMember can also act as an authorization source itself, checking authorization in the database, when someone tries to access a protected area protected with the php_include method.
Integration
aMember can be integrated with third-party scripts, such as Bulletin Boards, Content Management Systems, Trouble Tickets systems and so on.
For example, it can maintain a vBulletin Board database, so that only active (paid and not-expired) members are able to access the board. Thus a user can have a single login for both aMember and vBulletin and (in case of vBulletin board) will need to login only once in to access protected areas with HTML content and the vBulletin board.
Have a look to [of integration plugins].