PRIVATE TESTING

Test checkout & saved-card fees

This integration accepts Stripe test secret keys only. Use test cards, never real card details. A test payment does not move real money.

1. Connect your Stripe test account

In Stripe, select the sandbox or test environment you want to use. Copy its secret API key beginning with sk_test_. Save it in this website’s runtime settings as STRIPE_TEST_SECRET_KEY, with the secret option enabled. Do not paste the key into chat, booking notes, or website files. The runtime change must be applied to the private deployment before it takes effect.

Package and add-on amounts come from the website’s STRIPE_PRICES_JSON runtime setting, in cents. This checkout creates line items using those amounts; it does not read your Stripe Product catalog. The optional extraWeeks setting contains rates by package: {"basic":4997,"standard":7997,"plus":10997} in cents. One extra week costs Basic $49.97, Standard $79.97, or Plus $109.97 per selected package. For a custom combination, the extension rates are added for each package and quantity. This appears as its own checkout line item and changes the default pickup from day 14 to day 21. Review the total before testing. No publishable key or webhook signing secret is needed for this hosted Checkout flow.

Reload the reservation page. It should say “Stripe test checkout is connected.” That indicates that a test key and valid prices are configured; a completed test checkout verifies whether the key actually works.

2. Make a fresh test reservation

  1. Select a package and any add-ons. Enter delivery and pickup details.
  2. Review the order and accept the Store Policy. Separately check the saved-card authorization. Neither box is checked for you.
  3. Choose Continue to Stripe test checkout. For a successful test payment use 4242 4242 4242 4242, a future expiration date, and any three-digit CVC. Use an email address you control.
  4. Complete checkout and let Stripe return you to this website. Keep that browser tab open until the site verifies the payment and saved test card.

The website stores Stripe customer and payment-method references plus the card’s last four digits. Stripe handles full card details. Saving a reservation without checkout does not save a card or authorize later card charges. Earlier test reservations need a new authorized checkout to test this feature.

Customer confirmation and receipt emails

First update and redeploy the business Google script. Then make a new test reservation and complete Stripe checkout. The website opens a dedicated confirmation page showing your test payment, itemized total, each appointment’s decision, and a link to view or download the Stripe receipt. A PGTR receipt email containing that link goes to the email entered on the reservation after Stripe verifies payment. Keep the confirmation page open until verification completes.

Confirm or deny delivery and pickup individually using the links in the business notification email. Denials require a reason; the customer receives the decision and can request another time. Only approved appointments occupy their selected hours. Payment alone never confirms an appointment. Until the updated Google script is deployed, customer email remains queued. Stripe’s own test receipt emails can be sent manually from Stripe’s Payments dashboard; the PGTR receipt email uses the Google connection.

3. Test a missed-appointment fee

  1. Approve the appointment dates using the button in the business notification email.
  2. On the website, open Review saved reservation & pickup requests and choose Load saved requests.
  3. Under the paid, confirmed test rental, choose Test a $30 missed-appointment fee. Select delivery or pickup and record the arrival delay, contact attempt, and customer absence or lack of readiness.
  4. For a future test appointment, explicitly check TEST ONLY: simulate the elapsed grace period. This permits testing without waiting for that date. Otherwise, the full grace period must have elapsed.
  5. Submit the assessment once. The server attempts one fixed $30 off-session TEST payment. Refreshing or submitting the same appointment again returns its recorded result and does not create a second charge.

PGTR or its driver must verify a qualifying missed appointment. The customer receives 30 minutes from the later of the confirmed start or PGTR’s arrival/contact attempt. A PGTR arrival more than 30 minutes late is ineligible. Approved rescheduling and unattended handoffs must be honored. There is no clock-based automatic charging.

4. Check each outcome

  • Success: Verify the initial rental payment and separate $30 fee in the same Stripe test environment. The panel shows a receipt link when Stripe supplies one. Test-mode receipts are not necessarily emailed automatically; inspect the receipt in Stripe and test sending a receipt there.
  • Checkout decline: Start another test reservation with 4000 0000 0000 9995 to test insufficient funds. An unsuccessful checkout should not be reported as paid.
  • Authentication: Use Stripe’s authentication test card 4000 0027 6000 3184 and its on-screen authentication challenge. For a later fee, an authentication-required result means the fee has not been collected.
  • Off-session decline or uncertainty: Review the PaymentIntent in Stripe. The panel records the result and prevents another charge for the same appointment. Declined and uncertain attempts are not automatically retried. Off-session decline, authentication-required, and interrupted-request cases are also covered by the implementation’s mocked tests; they still need review with your connected Stripe sandbox.

This test version does not send a customer recovery link for an authentication-required fee. Review such payments in Stripe before arranging an authorized customer payment. If a customer withdraws authorization, do not assess another fee; remove or detach the saved method in Stripe and arrange an invoice if appropriate.

Stripe test cards and payment methods · Stripe saved-payment guidance

Return to test reservation

PGTR test guide · October 22, 2026. Private testing only; enabling live payments requires a separate review and approval.