Which path applies to you
- Yuno subscription engine: Yuno generates each rebill from a subscription object. Set the descriptor on the subscription.
- Merchant-initiated (MIT): You generate each rebill yourself with a Create Payment call using stored credentials. Set the descriptor on each payment.
Subscription-engine rebills
When Yuno’s subscription engine charges the customer on each cycle, set the descriptor once with thesoft_descriptor field on the subscription. Yuno persists it on the subscription and applies it to every rebill the engine generates.
- Set it on Create Subscription (
soft_descriptor, string, max 255). - Change it later on Update Subscription; the new value applies to subsequent rebills.
Create Subscription (excerpt)
Merchant-initiated (MIT) rebills
When you drive recurrence yourself — sending each charge as a merchant-initiated payment withstored_credentials.usage = USED and reason = SUBSCRIPTION — there is no subscription object to carry the descriptor. Set it per payment instead.
On Create Payment, the descriptor lives on the payment method detail:
payment_method.detail.card.soft_descriptorpayment_method.detail.wallet.soft_descriptorpayment_method.detail.bank_transfer.soft_descriptor
payment_method.detail.card.soft_descriptor.
Create Payment (excerpt)
Provider behavior
Yuno forwardssoft_descriptor to each provider’s equivalent field (for example, Stripe statement_descriptor / statement_descriptor_suffix, Unlimit dynamic_descriptor, Airwallex descriptor, Inovio PMT_DESCRIPTOR, Nuvei dynamicDescriptor.merchantName). Behavior differs by provider:
| Provider | Behavior |
|---|---|
| Stripe | Sends only the suffix (statement_descriptor_suffix) by default. The full descriptor is sent only for organizations enabled for full statement descriptors — contact your technical account manager. |
| Unlimit | Truncates to 22 characters. |
| Airwallex | Truncates to 30 characters. |
| Inovio | Strips non-alphanumeric characters. |
| Worldpay | Does not read soft_descriptor. The statement narrative comes from the generic payment_description field instead. |