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
  • Overview
  • Requirements
  • Enabling auto invoicing for an item
  • API
  • Dashboard
  • Cancelling an autogenerated invoice
  1. Dashboard functionality
  2. Subscriptions

Auto-invoicing

Overview

Items can be set to "auto-invoicing" and Loop will automatically generate the next invoice for all agreements that exist with the item using the payment frequency configured for the item.

Auto-invoicing can be turned on for both subscriptions and one-time items. In the case of enabling auto-invoicing for one-time items, this means that the payment for the item will be processed immediately after the customer signs up. If auto-invoicing is not turned on for a one-time item then you will need to manually initiate the invoice for the customer that signed up.

Example: For a monthly subscription, a customer signs up on November 29th. The auto-invoicing will generate the next invoice on December 29th.

For a new item, there would be no agreement, thus the first bill date will be generated from the start date of the agreement.

For an existing item, which may have existing agreements, the first autogenerated invoice for existing agreements will use the bill date of the last pending or successful manual invoice, and adding the item frequency to it.

Example: Last successful manually created invoice for the item, which has an hourly frequency, was at 8am, you enable auto invoicing 12pm for that item. The next invoice generated for that agreement will be at 9am.

If this is not desired, the workaround is to manually create an invoice for now (12pm), and only then enable auto invoice. The next invoice will be generated from that just created manual invoice and be set to 1pm

Requirements

The following preconditions exist when creating an item that is auto invoiced:

  • The entity

    • must be setup to delegate signing

    • an inbound treasury wallet (where funds will be directed) must be configured.

  • The item type cannot be Outbound Payment (ID: 4)

  • Item amount must be > 0 (cannot be a variable rate item)

If Chargebee or Stripe is enabled, you cannot enable auto invoicing on any items. This is because we generate invoices based on the events from Chargebee/Stripe.

If you change the amount or the frequency of an item that is set to auto-invoicing, the next invoice generated for any existing subscriptions will reflect the new amount/frequency.

Enabling auto invoicing for an item

API

  • For a new item, call the POST item endpoint (POST {{apiUrl}}/api/v1/items)with the usual attributes, with the addition of autoInvoice and initialOffset

  • For an existing item, call the GET endpoint to get the existing item details

    • Use those details as the body of the PUT request (PUT {{apiUrl}}/api/v1/items), changing autoInvoice and initialOffset as needed

Name

Required

Default Value

Description

autoInvoice

Optional

false

A boolean value indicating whether this item should auto generate invoices

initialOffset

Optional

0

The number of days to offset the initial bill date for. For example, if the initialOffset is 7, the bill date of the first invoice will be 7 days from the date of signup

Dashboard

On the "subscriptions page" under "manage" there is a selection to turn on "auto-invoicing".

Cancelling an autogenerated invoice

You are able to cancel an autogenerated invoice. If the item is still configured to auto invoice, the next invoice will be generated based on the bill date of the cancelled one. If the item is no longer configured to auto invoice, the next invoice will not be generated.

PreviousFree trials, discounts and moreNextAuto-cancelations

Last updated 12 months ago