{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-guides/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":[]},"type":"markdown"},"seo":{"title":"Online Transaction Flow","llmstxt":{"hide":false,"sections":[{"title":"Table of contents","includeFiles":["**/*"],"excludeFiles":[]}],"excludeFiles":[]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"online-transaction-flow","__idx":0},"children":["Online Transaction Flow"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This page describes the shared lifecycle of an online order placed with Resolve."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["It is intended as a cross-platform reference for merchants using:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["a platform integration such as Shopify, BigCommerce, Magento 2, or WooCommerce"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["a custom integration built with the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/checkout-sdk"},"children":["Checkout SDK"]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"shared-online-checkout-flow","__idx":1},"children":["Shared online checkout flow"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["At a high level, the online transaction flow looks like this:"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The customer begins checkout on the merchant website."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The customer selects Resolve as the payment method."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The merchant website or platform sends checkout details to Resolve."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The customer completes the Resolve authentication and approval flow."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Resolve authorizes the transaction."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Resolve redirects the customer back to the merchant's order confirmation experience."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The merchant stores the Resolve identifier associated with the authorization."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The merchant fulfills the order."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The merchant captures the authorization when it is time to receive funds."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["If needed later, the merchant cancels the authorization or refunds captured amounts according to the integration model being used."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"where-the-flow-differs","__idx":2},"children":["Where the flow differs"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The overall customer journey is similar across integrations, but the operational model after authorization depends on how Resolve is integrated into the merchant's e-commerce stack."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"platform-integrations","__idx":3},"children":["Platform integrations"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For platform integrations, order and payment actions are generally driven through the e-commerce platform and synced into Resolve."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use these guides if you are on a supported platform:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/shopify"},"children":["Shopify / Shopify Plus"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/bigcommerce"},"children":["BigCommerce"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/magento-2"},"children":["Magento 2"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/woocommerce"},"children":["WooCommerce"]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Typical platform-driven behavior:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["the platform controls the checkout experience"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Resolve authorizes the buyer during platform checkout"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["capture, cancellation, refund, and fulfillment behavior may be triggered from the platform and reflected in Resolve"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["the exact post-authorization behavior depends on the platform integration"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"custom-checkout-integrations","__idx":4},"children":["Custom checkout integrations"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For custom integrations, the merchant controls the integration flow more directly through the Checkout SDK and Resolve APIs."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use these guides if you are building a custom e-commerce checkout:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/checkout-sdk"},"children":["Checkout SDK"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/checkout-sdk-charge-management"},"children":["Charge Management"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/checkout-sdk-order-management"},"children":["Checkout SDK Order Management"]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Typical custom-driven behavior:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["the merchant embeds or launches the Resolve checkout flow"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Resolve returns either a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["charge_id"]}," or an ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["order_id"]}," after successful authorization"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["the merchant stores that identifier and manages the authorization through the appropriate model"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"post-authorization-models-for-custom-checkout","__idx":5},"children":["Post-authorization models for custom checkout"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["If you are using a custom Checkout SDK integration, there are two possible authorization models."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"charge-model","__idx":6},"children":["Charge model"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In the charge model:"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Resolve returns ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["charge_id"]}," after checkout success."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The merchant stores the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["charge_id"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The merchant captures or cancels the charge as needed."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["If the charge has already been captured, refunds are handled against the resulting invoice by issuing a credit note."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use this model when you want a simpler one-authorization flow."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Related guides:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/checkout-sdk"},"children":["Checkout SDK"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/checkout-sdk-charge-management"},"children":["Charge Management"]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"order-model","__idx":7},"children":["Order model"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In the order model:"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Resolve returns ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["order_id"]}," after checkout success."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The merchant stores the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["order_id"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The merchant can fetch, update, capture, or cancel the order before and during fulfillment."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["If the order has been captured, refunds are handled against the resulting invoice by issuing a credit note."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use this model when you need partial capture, multiple captures, or a richer order-management workflow."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Order management can be handled either from the Resolve dashboard or through the Merchant API."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Related guides:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/checkout-sdk"},"children":["Checkout SDK"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/checkout-sdk-order-management"},"children":["Checkout SDK Order Management"]}]}]},{"$$mdtype":"Tag","name":"blockquote","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Note:"]}," To use the Checkout SDK order model, your merchant must opt in to ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Checkout - Order Authorization"]},"."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"choosing-the-right-guide","__idx":8},"children":["Choosing the right guide"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["If you are using Shopify, BigCommerce, Magento 2, or WooCommerce, start with your platform guide."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["If you are building a custom e-commerce checkout, start with ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/checkout-sdk"},"children":["Checkout SDK"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["If your custom checkout success flow returns ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["charge_id"]},", use ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/checkout-sdk-charge-management"},"children":["Charge Management"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["If your custom checkout success flow returns ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["order_id"]},", use ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/checkout-sdk-order-management"},"children":["Checkout SDK Order Management"]},"."]}]}]},"headings":[{"value":"Online Transaction Flow","id":"online-transaction-flow","depth":1},{"value":"Shared online checkout flow","id":"shared-online-checkout-flow","depth":2},{"value":"Where the flow differs","id":"where-the-flow-differs","depth":2},{"value":"Platform integrations","id":"platform-integrations","depth":3},{"value":"Custom checkout integrations","id":"custom-checkout-integrations","depth":3},{"value":"Post-authorization models for custom checkout","id":"post-authorization-models-for-custom-checkout","depth":2},{"value":"Charge model","id":"charge-model","depth":3},{"value":"Order model","id":"order-model","depth":3},{"value":"Choosing the right guide","id":"choosing-the-right-guide","depth":2}],"frontmatter":{"seo":{"title":"Online Transaction Flow"}},"lastModified":"2026-06-23T17:34:16.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/guides/online-transaction-flow","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}