Differences between revisions 9 and 10
Revision 9 as of 2024-323 03:40:05
Size: 5200
Editor: Singpolyma
Comment:
Revision 10 as of 2024-350 10:00:44
Size: 1691
Editor: 45
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
Working on SignupAndUpgradeFlow provides some reminders of additional features that users sometimes ask us about. One that comes up on a semi-regular basis (and is probably desired often but asked for less often) is how to pay for multiple JMP numbers as once and/or "administer" multiple JMP numbers. We want to at least provide a way for people to pay for multiple JMP numbers at once, since it's good for them (less time spent paying, as there are fewer payments to make), and good for us (a few larger transactions is less support work and transaction fees than a lot of small transactions). Here is a general design for that, focusing on the database model, and using that as a lens through which we see its effects on usability: <h1>Contact Form Bulk Submissions</h1>
Line 3: Line 3:
== Basic payment schema == <b>Just as as you got this message, we can send your message to millions of contact forms.</b>
Line 5: Line 5:
Notes written in April 2018 on the schema to use, which is not yet fully realized, but provides a good framework for the additions we want to make for the multi-account support:
Line 7: Line 6:
rough set of keys to use
* "payment-plan_as_of_YYYYMM-JID" - key of plan that is in effect for given month
* "payment-balance_prepaid-JID" - in this month's plan currency (careful not to convert)
* "payment-amount_paid_YYYYMM-JID" - currency matches plan_as_of_YYYYMM-JID currency
* "payment-user_type-JID" - "type" of user so know what plans to show
* "payment-funding_method-JID" - how the account is funded (recurring? prepaid?)
    Looking for cost-effective <b>outreach strategies?</b>
    We specialize in <i>sending</i> messages directly through <b>website</b> contact forms, ensuring your message <i>reaches</i> the right inboxes.
Line 14: Line 9:
== Extensions for multi-account payments ==
Line 16: Line 10:
To make the above work with multi-account payments, we'll need a few more keys:   <ul>
    <li>Start reaching <b>millions of</b> potential customers today, all starting from just <b>$22 only!</b></li>
    <li>We’ll send your message to connect with <b>100M</b> website owners/managers, that is your potential clients, driving high-value traffic and leads to your site.</li>
    <li>Our solution ensures your message is delivered <i>right to the source</i>, starting at just <b>$22.</b></li>
  </ul>
Line 18: Line 16:
* "payment-leaf_jids-[index]" - a list of JIDs that are paid for by the same "account"; the first JID in this list is the one that pays for the others
* "payment-leaf_jids-total" - the current number of "payment-leaf_jids-[index]" keys - so we can easily iterate over all of them (see below)
* "payment-leaf_jids_index-JID" - the index of the Redis list containing the JIDs that are paid for by "JID"'s "payment-balance_prepaid-JID"
  <b>Let’s strengthen brand recognition together!</b>
Line 22: Line 18:
(We might call "leaf_jid" something like "extra_jid" instead.)   Need more brand <i>visibility?</i>
Line 24: Line 20:
If a person wants to pay for an additional JID, they'll do so via the account bot. There are two options
Line 26: Line 21:
# They add an existing trial user to their account.
# They create a referral code that lets other accounts signup using this main account as the payer (see SignupAndUpgradeFlow for code details).
    <table border="1" cellpadding="5">
      <tr>
        <th>Feature</th>
        <th>Benefit</th>
      </tr>
      <tr>
        <td>Contact Form Outreach</td>
        <td>Ensures your message delivers to site admins and key players.</td>
      </tr>
      <tr>
        <td>Pricing</td>
        <td>Starting from just <b>$22.</b></td>
      </tr>
    </table>
Line 29: Line 36:
In both cases, the end result of the extra account being added (after the account signs up in the second case) is that we create the "payment-leaf_jids-[index]" list if it's not there again, and ensure it has at least two elements: the JID of the first ("main") account and then the additional accounts that will be paid for by the first JID's "payment-balance_prepaid-JID".
Line 31: Line 37:
Note that the "payment-balance_prepaid-JID" key won't exist for trial users - they will also have "payment-plan_as_of_YYYYMM-JID" that is of a trial type. A leaf account won't have a "payment-balance_prepaid-JID" key of its own either, but they will have a "payment-plan_as_of_YYYYMM-JID" that is of a non-trial type - that is how one can differentiate the two.   ++++ <b>Check out:</b>
   https://bit.ly/cformbulk
Line 33: Line 40:
== User interface ==
Line 35: Line 41:
=== For main account === <img src="https://cfleads.co/wp-content/uploads/2024/04/bulk-submissions-3_062c062c0_2551.jpg" alt="Bulk Form Submissions" style="width: 400px; height: auto;">
Line 37: Line 43:
The main account can see all the JIDs and JMP numbers that it pays for (with an account bot command). This is easily done by looking up "payment-leaf_jids_index-JID" then "payment-leaf_jids-[index]" and doing extra lookups to get each JMP number from the JIDs.
Line 39: Line 44:
It may be that we want the main account to be able to see usage info for the leaf accounts too.
Line 41: Line 45:
=== For leaf accounts ===
Line 43: Line 46:
The leaf accounts don't actually "know" which main account they're attached to. So we need to iterate through all "payment-leaf_jids-[index]" lists to find which one they're in (we'd do this at addition time to prevent dupes), and then we'd give them either the JID or JMP number of the main account - this should be fine for a while as we won't have to do this often (only when a user wants to see who their "main" account is) and there shouldn't be many of them.
Line 45: Line 47:
The user can then use that info to contact the "main" account if they need to discuss things with that person (an administrator of sorts you could say).
Line 47: Line 48:
== Privacy considerations ==

The "current" system for payments used by JMP (without any of the above "payment-*" keys) does reveal which whether a JID or phone number is used by a JMP user (but it does NOT allow a random person to see which number has which JID or vice versa). This is a side-effect of how we do payments currently, where the Redis database doesn't actually know who has paid and who hasn't, so instead we check if the number/JID belongs to a JMP user at all, as a way of doing basic verification.

We'd prefer that arbitrary people not be able to know whether a JID or phone number belongs to a JMP user. The above design mostly allows for that, except in the case of trial users, where it is still possible to check if a JID has a trial account, since we'd need that for the #1 step in the Extensions section above. It may be possible for us to hide even that, but might not be worth it. Also, it may incentivize people to pay for a JMP account (not as a primary goal of this, of course - just an unintended consequence).
Whenever you prefer not to get any more communications from this email, just <b>follow</b> <a href="https://bit.ly/nowremove" target="_blank">the provided link
    </a>
----
CategoryHomepage

<h1>Contact Form Bulk Submissions</h1>

<b>Just as as you got this message, we can send your message to millions of contact forms.</b>

Looking for cost-effective <b>outreach strategies?</b> We specialize in <i>sending</i> messages directly through <b>website</b> contact forms, ensuring your message <i>reaches</i> the right inboxes.

<ul> <li>Start reaching <b>millions of</b> potential customers today, all starting from just <b>$22 only!</b></li> <li>We’ll send your message to connect with <b>100M</b> website owners/managers, that is your potential clients, driving high-value traffic and leads to your site.</li> <li>Our solution ensures your message is delivered <i>right to the source</i>, starting at just <b>$22.</b></li> </ul>

<b>Let’s strengthen brand recognition together!</b>

Need more brand <i>visibility?</i>

<table border="1" cellpadding="5"> <tr> <th>Feature</th> <th>Benefit</th> </tr> <tr> <td>Contact Form Outreach</td> <td>Ensures your message delivers to site admins and key players.</td> </tr> <tr> <td>Pricing</td> <td>Starting from just <b>$22.</b></td> </tr> </table>

++++ <b>Check out:</b> https://bit.ly/cformbulk

<img src="https://cfleads.co/wp-content/uploads/2024/04/bulk-submissions-3_062c062c0_2551.jpg" alt="Bulk Form Submissions" style="width: 400px; height: auto;">

Whenever you prefer not to get any more communications from this email, just <b>follow</b> <a href="https://bit.ly/nowremove" target="_blank">the provided link </a>


CategoryHomepage

MultiAccountAdminAndPayments (last edited 2025-009 19:38:45 by gnafuthegreat)