Skip to main content
The soft descriptor (also called the statement descriptor) is the text a cardholder sees on their bank statement next to a charge. A clear descriptor reduces confusion and the disputes that follow from it, which matters most on recurring charges where the customer is billed without re-entering the checkout. Where you set the descriptor depends on which recurring mechanism you use. The two paths are independent, so pick the one that matches how the charge is generated.
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.
The same merchant can use both for different products. Wallet rebills (Apple Pay / Google Pay) ride the card / network-token rail in both cases, so the rules below apply to them too.

Subscription-engine rebills

When Yuno’s subscription engine charges the customer on each cycle, set the descriptor once with the soft_descriptor field on the subscription. Yuno persists it on the subscription and applies it to every rebill the engine generates.
Create Subscription (excerpt)

Merchant-initiated (MIT) rebills

When you drive recurrence yourself — sending each charge as a merchant-initiated payment with stored_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_descriptor
  • payment_method.detail.wallet.soft_descriptor
  • payment_method.detail.bank_transfer.soft_descriptor
For Apple Pay and Google Pay rebills, the saved method is a card-type network token, so use payment_method.detail.card.soft_descriptor.
Create Payment (excerpt)
See Stored Credentials for the full CIT/MIT flow.

Provider behavior

Yuno forwards soft_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:
Length and allowed characters vary by provider. Keep descriptors short and alphanumeric so they survive truncation and sanitization, and test with your provider before relying on a specific format.