Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.appcharge.com/llms.txt

Use this file to discover all available pages before exploring further.

To launch the checkout, follow these steps:
  1. From your server, call the Create Checkout Session API to create a checkout session.
    • When calling the Create Checkout Session API, don’t pass the redirectUrl parameter. The SDK already handles the redirect automatically using the configuration file.
    • Call the API from your server to ensure session integrity and security. Never invoke this endpoint from your client-side code.
  2. After receiving the API response on your server, extract the values from the session object:
    {
        "checkoutSessionToken": "session_token_identifier",
        "purchaseId": "pr_purchase_id",
        "url": "https://checkout-v2-sandbox.appcharge.com",
        "parsedUrl": "https://checkout-v2-sandbox.appcharge.com/session_token_identifier#boot=checkout_boot_data"
    }
    
    ParameterDescription
    checkoutSessionTokenA unique token to identify and validate the checkout session.
    purchaseIdID to track the purchase.
    urlThe base URL of the Appcharge checkout page.
    parsedUrlThe base URL with data configurations.
  3. Use the values returned in the checkout session response to open the checkout on the client:
    BridgeAPI.openCheckout(
        purchaseId: "PURCHASE_ID",
        parsedUrl: "PARSED_URL"
    )
    
    The session response values must be passed exactly as received. Modifying them may result in the checkout failing to load.
  4. You can also configure how the checkout page is opened (optional):
    // Open the checkout in the device’s default browser
    BridgeAPI.setBrowserMode("external")
    
    // Open the checkout with an internal custom Chrome tab
    BridgeAPI.setBrowserMode("cct")
    
    // Open the checkout with an internal Trusted Web Activity
    BridgeAPI.setBrowserMode("twa") // <-- Default
    
    Running the checkout in an external browser may cause inconsistent behavior across devices and Android versions, including session loss, incomplete transactions, or app unexpected lifecycle behavior.