A Stripe restricted key lets 9Pic Checkout use only the Stripe permissions it needs instead of a full-access secret key. Create the key in Stripe first, then paste it into Payment Config -> Add Gateway -> Stripe in 9Pic.Use the downloadable Stripe Restricted API Key Setup Guide as your external checklist while following this dashboard guide.
Set only the rows 9Pic needs, and leave unrelated resources on None.
Stripe resource
Permission
Used for
Checkout Sessions
Write
Opening Stripe Checkout for buyers and checking session status.
Customers
Write
Creating or updating buyer customer records for checkout and invoices.
Payment Intents
Write
Completing and checking card payments created through Checkout.
Payment Methods
Write
Supporting payment methods used by Stripe Checkout.
Charges and Refunds
Write
Stripe groups these together in the permission table. Choose Write so charge-related checkout workflows are not blocked.
Balance
Read
Reading balance-related Stripe information when needed for payment checks.
Events
Read
Reading Stripe event information for payment status checks.
Files
Read
Supporting Stripe-hosted payment or invoice file references when Stripe returns them.
Invoices
Write
Creating buyer invoices when invoice support is used.
Invoice Items
Write
Adding the purchased item line to the Stripe invoice.
Stripe may rename or combine rows over time. For example, some accounts show Charges and Refunds as one row. If Stripe shows a permission-denied message later, edit the restricted key, add the missing resource permission, save, and test again.
Confirm the key name, Stripe account, test/live mode, and permissions before you click Create key.
2
Create and copy once
Click Create key. Stripe shows the restricted key value only once. Copy it immediately and store it securely.
3
Do not share it casually
Do not paste the key into email, chat, screenshots, task tickets, public documents, or browser-side code.
Do not create a live key until the Stripe account is ready for real payments. Test the setup with an rk_test_ key first, then create a separate rk_live_ key for production.
In 9Pic, open Payment Config from the dashboard sidebar.
2
Add a Stripe gateway
Click Add Gateway, choose Stripe, and paste the restricted key into the Stripe Secret Key field. The field stores the protected Stripe credential for your organisation, even when the key starts with rk_test_ or rk_live_.
3
Create the gateway
Click Create Gateway. The gateway list should show the Stripe configuration as Configured.
4
Map events to Stripe
In Event Mapping, assign the Stripe gateway to each event that should use Stripe for 9Pic Checkout.
Open the restricted key in Stripe, find the resource named in the error message, set the needed permission, save, and retry the test payment or invoice step.
I copied the key but lost it before adding it to 9Pic.
Create a new restricted key, store it securely, add the new value to 9Pic, then revoke the unused key in Stripe.
Should I use the same key for test and live payments?
No. Keep separate keys for test mode and live mode. This reduces mistakes and makes rotation easier.
The 9Pic field says Stripe Secret Key. Can I paste a restricted key?
Yes. Paste the restricted key value there. Stripe restricted keys start with rk_test_ in test mode and rk_live_ in live mode.