HOW TO - set the date for a members recurring payment

Discussion in 'Payments processing' started by gocliff, Feb 8, 2012.

  1. gocliff

    gocliff Maverick Marketing Methods

    Joined:
    Nov 22, 2011
    Messages:
    38
    Hello:

    Selling a product / service that has recurring monthly payments with aMember sets the payment date each month to be on the day of the the month that the first sale agreement was made. I have a client who signed up on the 21st for a subscription that he wants to have billed on the 7th of each month. The aMember system now wants to bill him on the 21st. How do we manually adjust his billing record to have aMember charge him each month on the 7th, instead?
  2. davidm1

    davidm1 aMember User & Partner

    Joined:
    May 16, 2006
    Messages:
    4,435
    What payment system are you using?

    David
  3. gocliff

    gocliff Maverick Marketing Methods

    Joined:
    Nov 22, 2011
    Messages:
    38
    Hello David:
    I recognize your company. Been giving a thought to sign up, but timing, need and cash flow are everything just now.

    We use Authorize.net CIM method to process credit / debit transactions. That is working fine. We understood and did a work-around, since we could not find the utility to edit a customer's scheduled recurring bill record. We simply cancelled the exiting scheduled repayment transactions (due on 2/21/2012), then signed into the customer's account and signed him up for the same service agreement but did the transaction yesterday (2/8/2012) exactly one day later than he expects, and the system recorded his new repayment recurring bill date as of the 8th of each month. We received the Authorize net merchant confirmation this morning, all is well with this customer's account.

    However, we also use a software called xFlow for managing an MLM business where a complex mulit-level income commission structure is based on recurring billing, and that software allows us to view and edit the member's scheduled billing record in order to change the monthly transaction date. Changing the billing date directly is much faster and easier than doing the process we used to fix the aMember customer record for billing.

    We hope to discover in aMember a procedure for changing a member's scheduled rebill date that is also direct and easy.

    Thank you for asking!

    Regards,

    Clifford
  4. alex

    alex Administrator Staff Member

    Joined:
    Jan 24, 2004
    Messages:
    6,020
    Clifford,
    this functionality is impossible for most payment plugins, so we do not make it standard function. However, for CIM it is possible.
    Go to aMember Cp -> Browse Users -> ..find user, click Edit -> Payments
    find invoice record you are interested in. Find the invoice numeric id (before /)
    Then, use SQL tool in webhosting control panel (phpMyAdmin), run a query on aMember MySQL database:

    PHP:
    UPDATE am_invoice SET rebill_date '2012-03-07' WHERE invoice_id 123123;
    (of course replace 123123 with actual invoice id#). And make sure to backup database before doing this.
  5. gocliff

    gocliff Maverick Marketing Methods

    Joined:
    Nov 22, 2011
    Messages:
    38
    Well, Sir Alex... that process you provided certainly works as I just tested it with no error. The solution certainly is not for the faint-at-heart or someone not already familiar with SQL database management using tools like phpMyAdmin. Fortunately, I've been doing SQL projects for the last 8 years, so understanding your instruction was easy.

    However, you provided a broad general set of instructions, and there are some very important detail steps the user of these instructions will need to know in order to successfully execute your directive. For example, the user must know how to identify the full name of the aMember database and know the database userID and password to access the file. We used MySQLdatabases, a utility in the cPanel under the sub-category database utilities to display all the SQL databases created under our account, and the UserID assgined to each database to know the access codes. With that information, the user can then launch the phpMyAdmin module and answer the login questions to access the databases available to the user. Since more than one database might be available to the user, they need to select aMember to get into the tables. Then they select the am_invoice table from all the other tables, click on the Search tab of phpMyAdmin, then set Column: invoice_id = #### (where #### is the invoice number) and click on GO. This will find and bring up the desired invoice record to edit. They then click on the Edit link (icon=pencil) and scroll down the record to the rebill_date field, click on the icon to bring up the calendar, select the new date, and then again click on GO. This makes the change. The user can now exit out of phpMyAdmin, exit out of their cPanel, exit our of their host account, and return to aMember cpAdmin to view the results. Heww.... what a lot of work! I think my work-around noted above is probably easier, safer, and better for most users who are not SQL admin programmers.

    Regarding your comment about "functionality is impossible for most payment plugins," just why don't you allow the user within aMember cpAdmin to view and edit the customer's am_invoice record? Are you saying that other payment plugins other than Authorize.net CIM do not process the rebill_date and status fields to determine which records are going to get processed as a batch by the payment plugin? It appears that the status of the field entries in this record precedes further processing by any payment plugin, and one would expect each payment plugin still checks the status of the rebill_date field to be not NULL and status field equals 2. There is also a payment_sys field that helps identify which batch payment processor to use on the am_invoice table. This is just a little of what I've been able to determine from a brief examination of the am_invoice table.

    This is just a simple curiosity I have about how the payment batch processor works. All-in-all, the design of the table and purpose of its fields are reasonable to understand, and exhibit some pretty cool planning.

    :)

    I am grateful to learn from you about the inside workings of aMember and send you my thanks for giving this your time and consideration.

Share This Page