old_Loopcrypto.xyz
  • Introduction
  • Supported networks and tokens
  • Loop + Frames
  • Learn
    • How Loop works
    • Core components
      • Collecting authorization
        • Enabling payment on multiple networks
        • Accepting ETH and MATIC
      • Sending payment requests
      • Checking a customer's balance & allowance
      • Receipts and reminders
      • Customer portal
    • Loop + your financial stack
      • Linking on-chain transactions with invoices in your ERP system
      • Connecting with accounting software
      • Crypto off-ramp
    • Case studies
  • Dashboard functionality
    • Subscriptions
      • Free trials, discounts and more
      • Auto-invoicing
      • Auto-cancelations
    • One-time payments
    • Scheduling outbound payments
      • Internal notes
    • Editing an upcoming payment
    • Payments for platforms
  • Integrations
    • Stripe + Loop
      • Getting setup
      • Stripe Connect setup
      • Subscriptions
        • Free trials
        • Upgrading a customer or editing a subscription's products
      • Invoicing
      • One-time payments
      • Coupon codes
      • Stripe Connect - Subscriptions
      • FAQs about Stripe integration
    • Chargebee + Loop
      • Getting setup
      • Subscriptions
      • One-time payments
      • Coupon codes
    • Quickbooks + Loop
      • Invoicing
    • Xero + Loop
      • Invoicing
    • Ghost.org + Loop
    • Zapier + Loop
    • Manually add integrations
  • Technical Docs
    • APIs
      • Entity
        • Adding child entities
        • Adding user to child entity
        • Get child entities
      • Items
        • Adding items
          • Item types
          • Categories
        • Retrieving an item
        • Updating an item
        • Deactivating an item
      • Agreements
      • Transfer requests
        • Signing transfer requests
        • Loop CLI
        • Canceling transfer requests
        • Transfer request status
        • Handling unfulfilled transfer requests
        • Validations
      • Webhooks
        • Checking webhook signatures
        • Demo App
        • Slack, Airtable, Discord, Telegram
    • Archeticture
      • Smart contract
        • Deploying your smart contract
          • Modifying smart contract properties
      • Collecting authorization
        • Checkout page
          • Additional functionality
          • Add "pay with crypto" button
        • Checkout widget
          • NPM package readme
        • Checkout parameter examples
      • Providing on-chain payment based access
        • Subscription gated communities
    • Loop SDK
      • Verify Webhook
      • Transfers
      • Error Handling
      • Generating API keys
    • Sample guide: Collect a subscription or one-time payment
    • Integrating the Loop Protocol into your dApp
      • Payroll applications
      • Loan platforms (credit cards, BNPL)
    • Security
      • API Authentication
      • Securing with signatures
      • API Trust assumptions
      • Audits
  • FAQs
  • Company Dashboard
  • Loop Portal
Powered by GitBook
On this page
  • Free trials
  • Pro-rated charges
  • Discounts
  • Metered rate
  1. Dashboard functionality
  2. Subscriptions

Free trials, discounts and more

Loop’s flexible architecture natively enables companies to offer free trials, discounts, metered billing, and more. This guide is for how to leverage Loop and does not apply to Stripe or Chargebee integrations.

Free trials

Auto-invoicing

For subscriptions that have auto-invoicing enabled, Loop allows you to set the initalOffset which specifies in days from when the first invoice should be created relative to the date/time of the customer authorization. This is set at subscription (i.e. item) creation.

Manual

For those that are manually sending transfer requests, you can leverage the webhook that is sent when a user subscribes. This webhook contains the subscriber (wallet address) and the eventDate (Unix time in seconds). To offer a free trial, companies can simply send a transfer request with a billDate set to the eventDate + tree_trial_period.

For example, if you wanted to offer a 7 day free trial and a customer signs up on 1/1/2022, you would send the first transfer request dated for 1/8/2022.

Pro-rated charges

Companies can charge a prorated amount from the signup date (eventDate) to the last day of the month. At this time, companies need to perform this calculation on their own and include the prorated amount in the amount in the transfer request. Thus, this does not work with auto-invoicing.

Discounts

The checkout page shows the amount listed on the item. There are a few ways you can offer a discount at this time:

  1. Create a new item for a lower amount and use that checkout page link for customers that get a discount (auto-invoicing compatible)

  2. Add in the cart description field a line about a reduced price (manual invoicing only)

  3. Leave the cart as is, but simply bill for the lower amount (manual invoicing only)

Since Loop only bills when it is told of a scheduled payment, after collecting authorization, companies can simply send Loop a transfer request for the discounted amount. In the case of auto-invoicing, Loop will generate a new invoice for the subscription's amount, thus this should only be used if the discount lasts in perpetuity. If the discount is only for a few months, then a manual option is needed.

Discounts in Stripe are compatible with Loop.

Metered rate

Companies that bill for a different amount each period can use Loop. This only works for manual billing as Loop has no way of knowing the price each period.

When setting up a subscription or one-time payment, companies can direct the cart to show "price various" in the cart either by selecting this option on the company dashboard or by passing a 0 for the amount in the API call.

Companies then can calculate the amount due and include this amount in their transfer request for payment.

PreviousSubscriptionsNextAuto-invoicing

Last updated 9 months ago