Configurable functionality

Loop allows merchants to configure some functionality by appending parameters to the end of the Loop checkout page URL. These fields are case sensitive.

If you are appending multiple functionalities together, the first functionality requires the "?" and the other functionalities are appended with an "&" in place of the "?".

For example:

https://checkout.loopcrypto.xyz/<entity-id>/<item-id>?cartEnabled=false&defaultSpendingCap=<default spending cap>

Functionality

Functionality

Appended after item-Id

Description

Hiding the cart

?cartEnabled=false

Hides the cart

Pre-fill email

?email={{customer email address}}

Renders the email input uneditable

Linking an authorization to existing subscriptions in Stripe

?sub={{stripeSubscriptionId}}

Payment will be for the next upcoming invoice for that subscription

Passing an external ID

?refId={{reference ID}}

Id will be passed back in the webhooks and saved to the agreement

Setting a minimum balance amount

?minimumBalanceRequired

Requires the user to have a minimum amount in their wallet to complete checkout

Setting a custom default approval amount

?defaultSpendingCap={{custom approval amount}}

Override's Loop's default and suggests a new approval amount

Purchasing multiple products

?item_id=<item_id>,<item_id>,...

Allow payment links to work for multi-product purchases

New subscription purchase links to an existing Stripe customer (Stripe integration only)

?customerId

Add a subscription to an existing Stripe customer

Set the bill date for the future (Stripe integration only)

?billDate

The date in seconds when the user should be charged next (epoch timestamp in seconds)

Set to always make a new customer in Stripe

?newCustomer

true will create a new stripe customer with the given email
false or omitted: we'll look up the email and use the customer if found

Pre-fill email

You should pass in the encoded form of the email into the URL for it to properly handle special characters. For example, I should not pass "andrew+test@loopcrypto.xyz" in the URL; instead, I should pass "andrew%2Btest@loopcrypto.xyz" in the URL for the email to display correctly on the checkout page as "andrew+test@loopcrypto.xyz".

For example:

https://checkout.loopcrypto.xyz/><entity-id>/<item-id>?email={{customer email address}}

Payment links for a multi-product purchase

You can append multiple itemIds together so that one payment link results in the purchase of multiple products. This includes combining multiple subscription products, one-time purchases or a combination of both (i.e. subscription(s) with one or many one-time payment). When combining multiple subscriptions, they must have the same billing frequency (i.e. monthly, yearly, etc.) and accept at least one of the same token/network pairs. Payment links will only display the token/network pairs that are accepted by all the products.

For example:

<https://checkout.loopcrypto.xyz/><entity-id>/<item-id>?item_id=<item_id>,<item_id>,...

Since you will need the itemIds you will first have to create the product in Loop using the POST Items endpoint or retrieve an existing item using the GET Items endpoint.

You can also find the itemIds on the Company Dashboard on the Subscription and One-time payment pages. If you hover over the Product name to see the entire URL and can find the itemId at the end of the URL after the /.

Setting a custom default approval amount

Companies can override this default suggested approval amount by passing in a new amount. The amount is specified in USD cents, i.e. a value of 100 equates to $1.00 USD. When this parameter is set, the checkout will display the amount specified.

Please ensure this amount has a buffer as the price of a token may move and the payer may not have enough to complete the payment.