Developer API

Integrate with URL schemes

Launch Payment for Stripe from your app or website to process transactions. Pass customer data, amounts, and product info — then handle the callback when complete.

How it works

1

Your app opens a payment:// URL with parameters

2

Payment for Stripe launches and processes the transaction

3

On completion, the app redirects to your callback URL with the result

Endpoints

Create a Charge

payment://new?

Process a one-time payment with amount, currency, and description.

Parameters

NameTypeRequiredDescription
amountintegerYesAmount in cents (e.g., 1000 = $10.00)
currencystringNoThree-letter ISO currency code (default: USD)
descriptionstringNoURL-encoded charge description
customerstringNoExisting Stripe customer ID
emailstringNoCustomer email for receipt
namestringNoURL-encoded customer name
metadatastringNoCustom key-value pairs (URL-encoded JSON)
callbackstringNoURL to return to after completion
autoprocessbooleanNoSkip home screen and start charge immediately

Create an Invoice

payment://cart?

Create a Stripe invoice with line items from your product catalog.

Parameters

NameTypeRequiredDescription
pricesstringYesComma-separated price IDs with quantities (e.g., price_abc:2,price_xyz:1)
customerstringNoExisting Stripe customer ID
emailstringNoCustomer email for receipt
namestringNoURL-encoded customer name
callbackstringNoURL to return to after completion

Handling callbacks

When the transaction completes, Payment for Stripe redirects to your callback URL with query parameters indicating the result.

Callback Parameters

ParameterValuesDescription
statussuccess | error | cancelledResult of the transaction
charge_idstringStripe charge ID (on success)
errorstringError message (on error)

Examples

Simple charge

Charge $10.00 with just an amount

payment://new?amount=1000

Charge with description

Charge €25.00 with a description

payment://new?amount=2500&currency=eur&description=Coffee%20and%20pastry

Charge with new customer

Charge $50.00 and create a customer record

payment://new?amount=5000&name=John%20Smith&email=john@example.com

Charge existing customer

Charge $75.00 to an existing Stripe customer

payment://new?amount=7500&customer=cus_ABC123xyz

Charge with metadata

Charge $100.00 with custom metadata for your records

payment://new?amount=10000&description=Invoice%20%231234&metadata=%7B%22order_id%22%3A%221234%22%2C%22location%22%3A%22Store%20A%22%7D

Auto-process with callback

Skip the home screen and return to your app when done

payment://new?amount=3500&autoprocess=true&callback=myapp://payment-complete

Invoice with line items

Create an invoice with products from your Stripe catalog

payment://cart?prices=price_coffee:2,price_muffin:1&email=customer@example.com

Complete example

All parameters combined for a fully integrated flow

payment://new?amount=15000&currency=usd&description=Service%20Fee&customer=cus_ABC123xyz&metadata=%7B%22invoice%22%3A%22INV-2024-001%22%7D&autoprocess=true&callback=myapp://payment-result

URL Encoding

Remember to URL-encode special characters in parameter values. Spaces become %20, curly braces become %7B and %7D.

Ready to integrate?

Download the app and start testing your integration today.