Payment initiation and future usage configuration are the first steps in the alternative payment lifecycle. Use the flows below to create orders and define how stored credentials are used later.
API Init payment API v1 endpoint initiates a payment using an alternative payment method, creates the order, and prepares the transaction so the customer can proceed with the payment process.Init future payment
Use the Host-to-host, Payment Page, Payment Link, or Payment Form flow to initiate a future payment.
| one-time | 1-click | recurring | unscheduled | |
|---|---|---|---|---|
| Alipay alipay | supported | not supported | not supported | supported |
| Bizum bizum | supported | not supported | not supported | not supported |
| Blik Pay Later blik-bnpl | supported | not supported | not supported | not supported |
| Blik blik | supported | not supported | not supported | supported |
| Cash App cashapp | supported | not supported | not supported | not supported |
| GCash gcash | supported | not supported | not supported | supported |
| Klarna klarna-network | supported | not supported | supported | not supported |
| MB WAY mbway | supported | supported | supported | not supported |
| MobilePay mobilepay | supported | not supported | not supported | not supported |
| Multibanco multibanco | supported | not supported | not supported | not supported |
| Pix Automático pix-automatico | not supported | not supported | supported | not supported |
| UPI upi | not supported | not supported | supported | supported |
| WeChat wechatpay | supported | not supported | not supported | supported |
future_usage object Use this flow to define intent for subsequent use of the customer's payment credentials, token-based future charges.
It ensures compliance with scheme rules, reduces declines on future payments, and improves success rates. future_usage object Required
Description
Defines the usage of stored payment credentials.
Should be provided either future_usage or product_id for payment_method
alipay
,
bizum
,
cashapp
,
gcash
,
klarna-network
,
mbway
,
mobilepay
,
multibanco
,
pix-automatico
,
wechatpay
.
For payment_method
upi
, future_usage is always required. When using a product, provide both future_usage and product_id.
Example
{
"future_usage": {
"payment_type": "recurring"
}
}
payment_type
string
Required
Description
Type of the token usage scenario.
- one-time no token created, for one-off use
- 1-click token for future CIT without re-entering details
- recurring token for fixed scheduled MIT, for subscriptions
- unscheduled token for unscheduled/variable MIT, for auto-top-up
For upi :
-
unscheduled
for one-time payments with Collect (
direct
) and Intent (
redirect
). Omit
billing_period. -
recurring
for Autopay mandates with Intent (
redirect
) only. Requires
max_amountandbilling_periodunless a subscriptionproduct_idsupplies the billing plan. See .
Description
Maximum authorized charge amount per billing cycle in the
for INR.Required for payment_method
upi
when payment_type is
recurring
and no product_id or product_price_id is provided. Optional for UPI subscription product payments to set a custom authorization ceiling.
Description
Recurring billing interval for the UPI Autopay mandate.
Required for payment_method
upi
when payment_type is
recurring
and no product_id or product_price_id is provided. Do not send billing_period for UPI subscription product payments. The billing plan is taken from the product. Omit when payment_type is
unscheduled
.
Allowed unit and value combinations are listed in
<span class="tooltip_content tooltip_content__hasTitle">
<span class="tooltip_icon">
</span>
<span>
<span class="tooltip_title">
Guide
</span>
<br />
<span class="tooltip_text__boldGrey">
Accept UPI Intent payments in India where customers select their UPI app directly or scan a QR code on desktop for one-time and mandate-based checkout.
</span>
</span>
</span>
</span>
<a href="https://docs.solidgate.com/payments/alternative-payments/apms-overview/upi/upi-intent/#billing-periods">UPI Intent</a>
.
To streamline integration for merchants using product services, the system automatically calculates the appropriate payment intent by combining payment_type and product_id.
When both are provided, the system ensures no conflict between them. In the case of a conflict, such as a
one-time
payment with a
recurring
product, the request is declined. If only the product_id is provided, the payment_type is determined based on the product type.
Future usage |
Product type by |
Validation result |
Calculated value |
|---|---|---|---|
| - | - | DECLINED | - |
| - | one-time | OK | one-time |
| - | recurring | OK | recurring |
| one-time | - | OK | one-time |
| one-time | one-time | OK | one-time |
| one-time | recurring | DECLINED | - |
| 1-click | - | OK | 1-click |
| 1-click | one-time | OK | 1-click |
| 1-click | recurring | DECLINED | - |
| recurring | - | OK | recurring |
| recurring | one-time | DECLINED | - |
| recurring | recurring | OK | recurring |
| unscheduled | - | OK | unscheduled |
| unscheduled | one-time | OK | unscheduled |
| unscheduled | recurring | OK | unscheduled |