All settings live in EDD’s edd_settings option (read with edd_get_option()), in the Paddle section of the Payments tab.
| Key | Meaning |
|---|---|
wpinterface_paddle_api_mode | billing or classic. If unset: classic when Classic credentials exist (upgrade path), else billing. |
wpinterface_paddle_billing_{live,sandbox}_api_key | Billing API key |
wpinterface_paddle_billing_{live,sandbox}_client_token | Billing client-side token (live_… / test_…; anything else counts as not configured) |
wpinterface_paddle_billing_{live,sandbox}_webhook_secret | Notification destination secret (pdl_ntfset_…) |
wpinterface_paddle_classic_{live,sandbox}_vendor_id, …_api_key, …_public_key | Classic credentials |
wpinterface_paddle_checkout_mode | inline (default) or overlay |
wpinterface_paddle_checkout_theme, …_checkout_locale, …_checkout_label, …_show_icons | Checkout appearance |
wpinterface_paddle_product_name, …_product_image | Multi-item title (Classic), fallback image |
wpinterface_paddle_tax_category, …_tax_mode | Billing price tax_category / tax_mode |
wpinterface_paddle_cancel_timing | Billing: next_billing_period (default) or immediately |
wpinterface_paddle_disable_customer_portal, …_hide_invoice_link | Opt-out switches (unchecked = feature on) |
wpinterface_paddle_remove_data_on_uninstall, …_debug | Maintenance |
Reading settings
Use Settings::credential( $name, $sandbox = null, $mode = null ) instead of reading keys directly; $sandbox defaults to edd_is_test_mode(). Other helpers: Settings::api_mode(), is_billing(), is_configured(), client_token_valid(), checkout_mode(), checkout_locale(), webhook_url().
The settings screen renders both credential sets. admin.js shows the rows of the selected account type (row classes wpinterface-paddle-billing-field / wpinterface-paddle-classic-field).