Stripe takes card payments for online orders straight into one Stripe account: the account the integration's keys belong to, normally the restaurant's own. Stripe pays that account out to its bank. OrderTiger takes no fee inside Stripe; any OrderTiger charges are billed separately on the restaurant's invoices.

To take a share of each payment inside Stripe, or to collect payments on behalf of restaurants, use Stripe Connect instead.

Setting it up#

  1. In Company View, open Finance → Payment Integration and click + on the Stripe card.
  2. Leave Stripe selected at the top of the form (not Stripe Connect).
  3. Fill in the fields below and click Save.
  4. In Location View, open Finance → Payment Methods, add or edit the Card payment method and choose this integration as its payment processor.
FieldWhat it is
Identifier NameYour own name for the integration, shown in lists and when choosing it on a payment method.
Public KeyThe Stripe publishable key (pk_live_… or pk_test_…), from Stripe's Developers → API keys.
Secret KeyThe Stripe secret key (sk_live_… or sk_test_…) of the same account. Hidden by default; click the eye icon to show it.
Webhook Signing SecretOptional. Leave it empty: when you save, OrderTiger creates its webhook on this Stripe account and fills this in for you.
Auto Settle PaymentsOn: the card is charged as soon as the customer pays. Off: the amount is only reserved on the card and charged when the order is accepted. Locations that confirm orders automatically always charge straight away.
Apple Pay / Google PayOffer these wallets at checkout. Apple Pay also needs the domain verified in Stripe.
iOS Merchant IDThe Apple Pay merchant ID used by the iOS ordering app. Shown to super admins only.

How a card order is marked paid#

When the customer pays, the order waits as Card Pending until Stripe confirms the payment. Stripe confirms it by calling OrderTiger's webhook; the order then becomes paid and appears in Live Orders.

  • The webhook is created for you on the Stripe account when the integration is saved, listening for charge.succeeded. It is shown in Stripe under Developers → Webhooks.
  • Its signing secret is saved in Webhook Signing Secret. With a secret saved, OrderTiger only accepts a payment confirmation that carries Stripe's signature. With none, the confirmation is accepted without that check.
  • If the webhook already existed when you saved, it is reused and the field stays empty: Stripe only gives out a webhook's secret when it is created. Copy it from the webhook in Stripe (Reveal) and paste it in, or delete the webhook in Stripe and save the integration again.

Refunds#

Refunds are made from Orders, with the refund button on the order. The refund comes out of the same Stripe account that took the payment and goes back to the customer's card.

  • There is no fee to split: the whole refund comes out of that account.
  • Stripe does not return its own card processing fee on a refund.
  • For a Portal company's orders the refund form asks Is the merchant liable for this refund?. With plain Stripe the money always comes out of this Stripe account; the answer only decides how the refund appears on invoices: a merchant-liable refund is taken off the restaurant's earnings, a platform-liable one is not.
  • A refund can be partial; the amounts refunded so far are listed under the order.

Troubleshooting#

ProblemWhat to check
A paid order stays on Card Pending and never reaches Live OrdersStripe's confirmation did not arrive. In Stripe, check Developers → Webhooks has OrderTiger's webhook and look at its recent deliveries. If it is missing, save the integration again to create it.
Webhook Signing Secret is still empty after savingThe webhook already existed. Paste its secret from Stripe, or delete the webhook in Stripe and save again.
Payments fail with an authentication errorThe Secret Key and Public Key must come from the same Stripe account and the same mode (both test or both live).