CoreviaFlowCOREVIAFLOWDIGITAL PROJECT COMPANY Leave a request
EN UA RU

Shopify ↔ Stripe integration

Shopify orders agreed outside the checkout get a Stripe payment link, a confirmed Stripe payment moves the order on, and Stripe subscriptions turn into Shopify orders for each delivery

Most Shopify orders are paid at checkout, and this pair does not replace that. It is for the orders that do not fit: a wholesale buyer who agrees the order with a manager, a client abroad who pays by link, a monthly box sold as a Stripe subscription. Then the money is in Stripe, the order is in Shopify, and someone connects them by hand. The Shopify ↔ Stripe pair sends a Stripe payment link for the Shopify order, moves the order on when Stripe confirms the payment, and creates a Shopify order for each paid subscription period so the warehouse sees what to ship. Below: what exactly moves, which scenarios we cover and which capabilities of both systems we rely on.

What moves between the systems

  • Shopify → StripeAn order a manager prepares in Shopify is sent to Stripe as a payment page with the same amount, currency and order number, and the buyer gets the link.
  • Stripe → ShopifyStripe reports a completed payment; the pair checks the signature on the notification and then marks the matching Shopify order paid for the amount still due and moves it to fulfilment.
  • Stripe → ShopifyEach paid period of a Stripe subscription creates a Shopify order outside the checkout, as an order imported from another system, with the subscribed items and the buyer's address, so the warehouse ships it like any other order.
  • Stripe → ShopifyA subscription payment that is not collected leaves no Shopify order, and the case goes to a short list for a person instead of a box being shipped unpaid.
  • Stripe → ShopifyA refund made in the Stripe dashboard is picked up by the pair and added to the Shopify order note. Shopify replaces the note as a whole on update, so the pair first reads the existing note and writes it back with the new line.

What we connect

  • We look at how your store takes payments today and confirm which orders need this pair; orders paid at checkout stay as they are.
  • In Stripe an administrator gives the pair its own access and sets an address for notifications; Stripe issues a signing secret for it, and every notification is checked against it.
  • On the Shopify side the store owner grants the pair access only to orders and customers, and to nothing else in the store.
  • For subscriptions we map each Stripe product to Shopify items, so a paid period turns into the right order lines.
  • We rehearse in Stripe's test mode on a few test orders, then switch to live from an agreed date and watch the first days together with you.

Automation scenarios

01

A wholesale order paid by link

Before the manager creates a payment link in Stripe by hand, then checks later whether it was paid and updates Shopify.

After the link comes from the order itself, and the paid order moves to fulfilment on its own.

02

The monthly box nobody put on the list

Before subscriptions are paid in Stripe, and the warehouse works from a table someone updates by hand.

After every paid period appears as a Shopify order, and a failed payment stops the box before it ships.

03

A refund the store did not see

Before a refund is made in Stripe, and the Shopify order still looks paid at month end.

After a line about the refund is added to the order note without erasing what the team wrote there before, and the two systems tell the same story.

How it works technically

For those who want to check: each point links to the official documentation page it comes from.

  • An order can be created through the API outside the regular checkout — Shopify itself suggests this for orders imported from an external system or for wholesale customers.

    Source: shopify.dev ↗ checked 2026-09-29
  • An order can be marked as paid through the API: Shopify records a payment for the outstanding amount — this is meant for payments taken outside its checkout.

    Source: shopify.dev ↗ checked 2026-09-29
  • When an order is updated, its note and tags are replaced entirely, so a new tag or line must be sent together with the existing ones.

    Source: shopify.dev ↗ checked 2026-09-29
  • Payment Links, Stripe's no-code hosted payment page, support 40+ payment methods, send automatic receipts and allow no-code refunds directly from the dashboard.

    Source: docs.stripe.com ↗ checked 2026-09-25
  • Webhook authenticity is confirmed by checking the Stripe-Signature header against a signing secret issued when the endpoint is set up; the receiving server should respond quickly with a 2xx status instead of running long business logic inside the handler, and Stripe's official libraries allow a default 5-minute tolerance between the signature timestamp and server time.

    Source: docs.stripe.com ↗ checked 2026-09-25
  • When a subscription is created, Stripe automatically generates invoices, attempts to collect payment and manages the subscription's status through its whole lifecycle; with automatic charging, Stripe creates an invoice with an open status and gives the customer 23 hours to pay, during which the subscription stays incomplete.

    Source: docs.stripe.com ↗ checked 2026-09-25

Limits

The limits come from both systems. This pair does not change how your Shopify checkout takes payments; it covers orders paid outside it and Stripe subscriptions. Stripe expects the receiving side to answer its notifications quickly, so the pair records each one first and does the order work afterwards. A new Stripe subscription waits up to 23 hours for its first payment, and no Shopify order is created until that payment succeeds. Marking an order paid records the amount still due, and the order note is replaced as a whole on update, which is why the pair always reads the old note first. Access to the store is granted by its owner, and refunds are always made by a person.

How to start

Three steps from a first message to work on your project.

  1. 01

    Leave a request

    Describe the task in the form — in text or by voice. Budget and timing are optional.

  2. 02

    We review and estimate

    A developer studies the brief, asks about anything unclear and sends an estimate.

  3. 03

    We start

    Once scope and price are agreed, the work begins.

or write to info@coreviaflow.space

Questions

Our checkout already takes cards. Do we need this?
If every order is paid at checkout, no, and we will say so after looking. The pair is for orders agreed outside the checkout and for subscriptions sold through Stripe.
Who makes refunds?
A person, in the Stripe dashboard. The pair only brings the refund to the Shopify order as a note; it never returns money by itself.
What if Stripe's notification does not arrive?
The pair does not rely on notifications alone: once a day it compares Stripe payments with Shopify orders, and anything left unmatched goes to a person.

Tell us what needs to be connected

Describe the task in text or a voice message. We look at your setup and reply with a plan.