---
title: SureCart - Checkout Confirmed Payload
date: 2025-05-16T04:01:00Z
modified: 2025-05-16T15:33:11Z
permalink: "https://techarticles.co.uk/surecart-checkout-confirmed-payload/"
type: post
status: publish
excerpt: ""
wpid: 4945
categories:
  - Automation
  - Bubble
  - Coding
  - SureCart
  - Wordpress
timestamp: 2025-05-16T15:33:11Z
tags:
  - Automation
  - Bubble
  - Coding
  - SureCart
  - Wordpress
---

In this really short article to accompany a video, I will briefly discuss `surecart/checkout_confirmed` as an action hook and the payload it can deliver.

This is the main fired hook in [Surecart](https://ta0.uk/surecart) for a purchase, as it is fired every time there is a purchase in the article and the video. We are going to do two things:

- Output the checkout payload to our error log
- Look through the payload to see if we can match a Price ID

From here, you could add membership levels, trigger a webhook or any number of different solutions.

You can read more about action [hooks here in the documentation](https://developer.surecart.com/docs/order-actions-reference "hooks here in the documentation")

## Lets log our payload

This is easy, we want to call a function when `surecart/checkout_confirmed` is triggered and dumps it to our error log.

```
<span class="line"><span style="color: #6A737D">// Use the correct hook name:</span></span>
<span class="line"><span style="color: #B392F0">add_action</span><span style="color: #E1E4E8">( </span><span style="color: #9ECBFF">'surecart/checkout_confirmed'</span><span style="color: #E1E4E8">, </span><span style="color: #9ECBFF">'sc_log_checkout_and_check_price'</span><span style="color: #E1E4E8">, </span><span style="color: #79B8FF">10</span><span style="color: #E1E4E8">, </span><span style="color: #79B8FF">1</span><span style="color: #E1E4E8"> );</span></span>
<span class="line"></span>
<span class="line"><span style="color: #F97583">function</span><span style="color: #E1E4E8"> </span><span style="color: #B392F0">sc_log_checkout_and_check_price</span><span style="color: #E1E4E8">( $checkout_payload ) {</span></span>
<span class="line"><span style="color: #E1E4E8">    </span><span style="color: #6A737D">// 1) Log the full payload</span></span>
<span class="line"><span style="color: #E1E4E8">    </span><span style="color: #F97583">if</span><span style="color: #E1E4E8"> ( </span><span style="color: #79B8FF">defined</span><span style="color: #E1E4E8">( </span><span style="color: #9ECBFF">'WP_DEBUG'</span><span style="color: #E1E4E8"> ) </span><span style="color: #F97583">&&</span><span style="color: #E1E4E8"> </span><span style="color: #79B8FF">WP_DEBUG</span><span style="color: #E1E4E8"> ) {</span></span>
<span class="line"><span style="color: #E1E4E8">        </span><span style="color: #79B8FF">error_log</span><span style="color: #E1E4E8">( </span><span style="color: #9ECBFF">'SureCart Checkout Payload: '</span><span style="color: #E1E4E8"> </span><span style="color: #F97583">.</span><span style="color: #E1E4E8"> </span><span style="color: #79B8FF">print_r</span><span style="color: #E1E4E8">( $checkout_payload, </span><span style="color: #79B8FF">true</span><span style="color: #E1E4E8"> ) );</span></span>
<span class="line"><span style="color: #E1E4E8">    }</span></span>
<span class="line"><span style="color: #E1E4E8">}</span></span>
```PHP

This will give us a payload in our error log


```
SureCart Checkout Payload: SureCart\Models\Checkout Object ( [attributes:protected] => Array ( [email] => automation@wpcode.dev [customer] => SureCart\Models\Customer Object ( [attributes:protected] => Array ( [id] => 118337bd-2b02-4fa7-ad35-33207baeb9a4 [object] => customer [affiliation_expires_at] => [billing_matches_shipping] => 1 [email] => automation@wpcode.dev [first_name] => TD-Support [indexed] => 1 [last_name] => [live_mode] => [name] => TD-Support [phone] => [unsubscribed] => [tax_enabled] => 1 [portal_url] => https://app.surecart.com/portal_redirect/customers/118337bd-2b02-4fa7-ad35-33207baeb9a4 [affiliation] => [billing_address] => stdClass Object ( ) [default_payment_method] => 28742610-cd8d-4ad7-925d-5c83559c034b [shipping_address] => stdClass Object ( [id] => c8e386d0-29d5-40c4-a3c8-17160de21473 [object] => address [city] => xx [country] => GB [line_1] => xxxx [line_2] => [name] => [postal_code] => ccccc [state] => ANN [created_at] => 1747120023 [updated_at] => 1747120023 ) [tax_identifier] => [created_at] => 1745477541 [updated_at] => 1747120023 ) [defaults:protected] => Array ( ) [original:protected] => Array ( ) [endpoint:protected] => customers [object_name:protected] => customer [query:protected] => Array ( ) [relations:protected] => Array ( ) [fillable:protected] => Array ( [0] => * ) [guarded:protected] => Array ( ) [limit:protected] => 20 [offset:protected] => 0 [cachable:protected] => [cache_key:protected] => [optimized_caching:protected] => [cache_status:protected] => [clears_account_cache:protected] => ) [id] => a3bb731a-abfb-433f-8d06-bf1c4418c59a [object] => checkout [abandoned_checkout_enabled] => 1 [amount_due] => 100 [applied_balance_amount] => 0 [available_countries] => Array ( ) [billing_matches_shipping] => 1 [credited_balance_amount] => 0 [currency] => usd [discount_amount] => 0 [external_url] => https://wpautomation.dev/surecart/redirect [first_name] => TD-Support [free_shipping_choice_shortage_amount] => [full_amount] => 100 [group_key] => sc-checkout-96 [inherited_email] => automation@wpcode.dev [inherited_name] => TD-Support [inherited_phone] => [ip_address] => 2a02:c7c:dd62:3100:4d23:a78e:f0c0:3d6e [last_name] => [live_mode] => [manual_payment] => [metadata] => stdClass Object ( [page_id] => 97 [page_url] => https://wpautomation.dev/checkout-2/ [wp_created_by] => 1 ) [name] => TD-Support [net_paid_amount] => 100 [paid_amount] => 100 [g_weight] => 0 [paid_at] => 1747327426 [payment_method_required] => [portal_url] => https://app.surecart.com/portal_redirect/checkouts/a3bb731a-abfb-433f-8d06-bf1c4418c59a [phone] => [proration_amount] => 0 [refunded_amount] => 0 [remaining_amount_due] => 0 [reusable_payment_method_required] => [selected_shipping_choice_required] => [shipping_address_accuracy_requirement] => none [shipping_amount] => 0 [shipping_enabled] => [shipping_tax_amount] => 0 [shipping_tax_rate] => 0 [status] => paid [subtotal_amount] => 100 [tax_amount] => 0 [tax_behavior] => exclusive [tax_breakdown] => Array ( ) [tax_enabled] => [tax_label] => [tax_status] => disabled [total_amount] => 100 [total_savings_amount] => 0 [trial_amount] => 0 [upsells_expire_at] => 1747329226 [billing_address] => stdClass Object ( ) [current_payment_intent] => da8a8306-beec-434a-b20c-4d51bcabfdc6 [last_click] => [discount] => [line_items] => stdClass Object ( [object] => list [pagination] => stdClass Object ( [count] => 1 [limit] => 50 [page] => 1 [url] => /v1/line_items?checkout_ids%5B%5D=a3bb731a-abfb-433f-8d06-bf1c4418c59a ) [data] => Array ( [0] => SureCart\Models\LineItem Object ( [attributes:protected] => Array ( [id] => 13caf78c-bbdf-4af9-96b4-42a760d8aaf8 [object] => line_item [ad_hoc_amount] => [discount_amount] => 0 [fees_amount] => 0 [full_amount] => 100 [fulfilled_quantity] => 1 [locked] => [purchasable_status] => purchasable [quantity] => 1 [g_weight] => 0 [unit_g_weight] => 0 [scratch_amount] => 100 [stock_held] => 1 [subtotal_amount] => 100 [tax_amount] => 0 [tax_rate] => 0 [total_amount] => 100 [total_savings_amount] => 0 [trial] => [trial_amount] => 0 [variant_options] => [variant_option_names] => [bump] => [checkout] => a3bb731a-abfb-433f-8d06-bf1c4418c59a [fees] => stdClass Object ( [object] => list [pagination] => stdClass Object ( [count] => 0 [limit] => 20 [page] => 1 [url] => /v1/fees?line_item_ids%5B%5D=13caf78c-bbdf-4af9-96b4-42a760d8aaf8 ) [data] => Array ( ) ) [price] => SureCart\Models\Price Object ( [attributes:protected] => Array ( [id] => 5fd6a72e-83de-48dd-95ef-f704124d2b74 [object] => price [ad_hoc] => [ad_hoc_max_amount] => [ad_hoc_min_amount] => 0 [amount] => 100 [archived] => [archived_at] => [currency] => usd [current_version] => 1 [full_amount] => 100 [license_activation_limit] => [metadata] => stdClass Object ( ) [name] => Standard [position] => 0 [portal_subscription_update_enabled] => 1 [revoke_after_days] => [revoke_purchases_on_completed] => [recurring_interval] => [recurring_interval_count] => [recurring_period_count] => [scratch_amount] => [setup_fee_amount] => 0 [setup_fee_enabled] => [setup_fee_trial_enabled] => 1 [setup_fee_name] => [trial_duration_days] => [product] => SureCart\Models\Product Object ( [attributes:protected] => Array ( [id] => f5ac67b2-6c03-433e-ac14-701ef8675e01 [object] => product [allow_out_of_stock_purchases] => [archived] => [archived_at] => [auto_fulfill_enabled] => 1 [available_stock] => 32 [description] =>
These are event tickets

[held_stock] => 0 [featured] => [licensing_enabled] => [license_activation_limit] => [metadata] => stdClass Object ( ) [purchase_limit] => [metrics] => stdClass Object ( [currency] => usd [max_price_amount] => 100 [min_price_amount] => 100 [prices_count] => 1 ) [name] => Event Tickets [recurring] => [shipping_enabled] => [sku] => [slug] => event-tickets [status] => published [stock] => 32 [stock_enabled] => 1 [tax_enabled] => 1 [tax_category] => tangible [weight] => 0 [weight_unit] => lb [commission_structure] => SureCart\Models\CommissionStructure Object ( [attributes:protected] => Array ( ) [defaults:protected] => Array ( ) [original:protected] => Array ( ) [endpoint:protected] => commission_structures [object_name:protected] => commission_structure [query:protected] => Array ( ) [relations:protected] => Array ( ) [fillable:protected] => Array ( [0] => * ) [guarded:protected] => Array ( ) [limit:protected] => 20 [offset:protected] => 0 [cachable:protected] => [cache_key:protected] => [optimized_caching:protected] => [cache_status:protected] => [clears_account_cache:protected] => ) [product_group] => [current_release_download] => [product_medias] => stdClass Object ( [object] => list [pagination] => stdClass Object ( [count] => 0 [limit] => 20 [page] => 1 [url] => /v1/product_medias?product_ids%5B%5D=f5ac67b2-6c03-433e-ac14-701ef8675e01 ) [data] => Array ( ) ) [shipping_profile] => fb5c4f97-0da5-46a4-addc-746954380d9a [cataloged_at] => 1739808384 [discarded_at] => [product_collections] => stdClass Object ( [object] => list [pagination] => stdClass Object ( [count] => 0 [limit] => 20 [page] => 1 [url] => /v1/product_collections?product_ids%5B%5D=f5ac67b2-6c03-433e-ac14-701ef8675e01 ) [data] => Array ( ) ) [variants] => stdClass Object ( [object] => list [pagination] => stdClass Object ( [count] => 0 [limit] => 250 [page] => 1 [url] => /v1/variants?product_ids%5B%5D=f5ac67b2-6c03-433e-ac14-701ef8675e01 ) [data] => Array ( ) ) [image_url] => [created_at] => 1739808384 [updated_at] => 1747327426 ) [defaults:protected] => Array ( ) [original:protected] => Array ( ) [endpoint:protected] => products [object_name:protected] => product [query:protected] => Array ( ) [relations:protected] => Array ( ) [fillable:protected] => Array ( [0] => * ) [guarded:protected] => Array ( ) [limit:protected] => 20 [offset:protected] => 0 [cachable:protected] => 1 [cache_key:protected] => products [optimized_caching:protected] => [cache_status:protected] => [clears_account_cache:protected] => [sync_expands:protected] => Array ( [0] => prices [1] => product_medias [2] => product_media.media [3] => variants [4] => variant_options [5] => product_collections [6] => featured_product_media ) [image_sizes:protected] => Array ( [0] => 320 [1] => 640 [2] => 960 [3] => 1280 [4] => 1920 ) [resize_options:protected] => Array ( [0] => fit=scale-down [1] => format=auto ) ) [renewal_price] => [discarded_at] => [recurring_end_behavior] => complete [created_at] => 1739808407 [updated_at] => 1739808407 ) [defaults:protected] => Array ( ) [original:protected] => Array ( ) [endpoint:protected] => prices [object_name:protected] => price [query:protected] => Array ( ) [relations:protected] => Array ( ) [fillable:protected] => Array ( [0] => * ) [guarded:protected] => Array ( ) [limit:protected] => 20 [offset:protected] => 0 [cachable:protected] => 1 [cache_key:protected] => products [optimized_caching:protected] => [cache_status:protected] => [clears_account_cache:protected] => ) [upsell] => [bump_amount] => [created_at] => 1747327421 [updated_at] => 1747327426 ) [defaults:protected] => Array ( ) [original:protected] => Array ( ) [endpoint:protected] => line_items [object_name:protected] => line_item [query:protected] => Array ( ) [relations:protected] => Array ( ) [fillable:protected] => Array ( [0] => * ) [guarded:protected] => Array ( ) [limit:protected] => 20 [offset:protected] => 0 [cachable:protected] => [cache_key:protected] => [optimized_caching:protected] => [cache_status:protected] => [clears_account_cache:protected] => ) ) ) [manual_payment_method] => [order] => d4875880-7883-4acc-b897-e783119f9c8c [payment_method] => 28742610-cd8d-4ad7-925d-5c83559c034b [inherited_billing_address] => c8e386d0-29d5-40c4-a3c8-17160de21473 [inherited_shipping_address] => c8e386d0-29d5-40c4-a3c8-17160de21473 [inherited_tax_identifier] => [purchases] => stdClass Object ( [object] => list [pagination] => stdClass Object ( [count] => 1 [limit] => 20 [page] => 1 [url] => /v1/purchases?checkout_ids%5B%5D=a3bb731a-abfb-433f-8d06-bf1c4418c59a ) [data] => Array ( [0] => SureCart\Models\Purchase Object ( [attributes:protected] => Array ( [id] => ccc38fa8-de8e-4c09-a026-6d121361a806 [object] => purchase [live_mode] => [quantity] => 1 [revoked] => [revoked_at] => [revoke_at] => [customer] => 118337bd-2b02-4fa7-ad35-33207baeb9a4 [initial_order] => d4875880-7883-4acc-b897-e783119f9c8c <strong><em>[price] => 5fd6a72e-83de-48dd-95ef-f704124d2b74</em></strong> [product] => f5ac67b2-6c03-433e-ac14-701ef8675e01 [variant] => [created_at] => 1747327426 [updated_at] => 1747327426 ) [defaults:protected] => Array ( ) [original:protected] => Array ( ) [endpoint:protected] => purchases [object_name:protected] => purchase [query:protected] => Array ( ) [relations:protected] => Array ( ) [fillable:protected] => Array ( [0] => * ) [guarded:protected] => Array ( ) [limit:protected] => 20 [offset:protected] => 0 [cachable:protected] => [cache_key:protected] => [optimized_caching:protected] => [cache_status:protected] => [clears_account_cache:protected] => ) ) ) [recommended_bumps] => stdClass Object ( [object] => list [pagination] => stdClass Object ( [count] => 0 [limit] => 10 [page] => 1 [url] => /v1/bumps?checkout_ids%5B%5D=a3bb731a-abfb-433f-8d06-bf1c4418c59a ) [data] => Array ( ) ) [referral] => [shipping_address] => stdClass Object ( ) [tax_identifier] => [selected_shipping_choice] => [shipping_choices] => stdClass Object ( [object] => list [pagination] => stdClass Object ( [count] => 0 [limit] => 20 [page] => 1 [url] => /v1/shipping_choices?checkout_ids%5B%5D=a3bb731a-abfb-433f-8d06-bf1c4418c59a ) [data] => Array ( ) ) [bump_amount] => 0 [number] => TEST-0222 [pdf_url] => https://app.surecart.com/statements/orders/d4875880-7883-4acc-b897-e783119f9c8c [payment_intent] => SureCart\Models\PaymentIntent Object ( [attributes:protected] => Array ( [id] => da8a8306-beec-434a-b20c-4d51bcabfdc6 [object] => payment_intent [amount] => 100 [currency] => usd [external_intent_id] => [live_mode] => [off_session] => [processor_data] => stdClass Object ( [mock] => stdClass Object ( ) ) [processor_type] => mock [reusable] => [status] => succeeded [checkout] => a3bb731a-abfb-433f-8d06-bf1c4418c59a [customer] => 118337bd-2b02-4fa7-ad35-33207baeb9a4 [payment_method] => 28742610-cd8d-4ad7-925d-5c83559c034b [service_fee] => [created_at] => 1747327426 [updated_at] => 1747327426 ) [defaults:protected] => Array ( ) [original:protected] => Array ( ) [endpoint:protected] => payment_intents [object_name:protected] => payment_intent [query:protected] => Array ( ) [relations:protected] => Array ( ) [fillable:protected] => Array ( [0] => * ) [guarded:protected] => Array ( ) [limit:protected] => 20 [offset:protected] => 0 [cachable:protected] => [cache_key:protected] => [optimized_caching:protected] => [cache_status:protected] => [clears_account_cache:protected] => ) [charge] => fbf5ceb7-f181-495a-89b5-284a84d51fff [shipping_address_required] => [tax_rate] => 0 [tax_percent] => 0 [tax_exclusive_amount] => 0 [tax_inclusive_amount] => 0 [return_url] => https://wpautomation.dev/surecart/redirect [created_at] => 1747327421 [updated_at] => 1747327426 ) [defaults:protected] => Array ( ) [original:protected] => Array ( [email] => automation@wpcode.dev [customer] => 118337bd-2b02-4fa7-ad35-33207baeb9a4 ) [endpoint:protected] => checkouts [object_name:protected] => checkout [query:protected] => Array ( [expand] => Array ( [0] => purchases [1] => customer [2] => manual_payment_method [3] => line_items [4] => line_item.price [5] => line_item.fees [6] => line_item.variant [7] => line_item.swap [8] => variant.image [9] => price.product [10] => price.current_swap [11] => swap.swap_price [12] => product.product_medias [13] => product.featured_product_media [14] => product.product_collections [15] => product_media.media [16] => customer [17] => customer.shipping_address [18] => payment_intent [19] => discount [20] => discount.promotion [21] => recommended_bumps [22] => bump.price [23] => current_upsell [24] => product.variants [25] => discount.coupon [26] => shipping_address [27] => billing_address [28] => tax_identifier [29] => manual_payment_method [30] => shipping_choices [31] => shipping_choice.shipping_method [32] => invoice ) [t] => 1747327426848 [_locale] => user [refresh_status] => 1 ) [relations:protected] => Array ( ) [fillable:protected] => Array ( [0] => * ) [guarded:protected] => Array ( ) [limit:protected] => 20 [offset:protected] => 0 [cachable:protected] => [cache_key:protected] => [optimized_caching:protected] => [cache_status:protected] => none [clears_account_cache:protected] => [processor_type:protected] => )
```

That is a full payload, and in that payload, you will see in bold and underlined `price] => 5fd6a72e-83de-48dd-95ef-f704124d2b74` This is actually our price ID, and this is what we now want to target.

### Lets put it all together 

So now we need to look fr our price, id match it and if its there output a message and do the same if its not from here we can expand and add if its there or not there actions such as triggering our webhooks.

```
<span class="line"><span style="color: #F97583"><?</span><span style="color: #79B8FF">php</span></span>
<span class="line"><span style="color: #B392F0">add_action</span><span style="color: #E1E4E8">( </span><span style="color: #9ECBFF">'surecart/checkout_confirmed'</span><span style="color: #E1E4E8">, </span><span style="color: #9ECBFF">'sc_log_checkout_and_check_price'</span><span style="color: #E1E4E8">, </span><span style="color: #79B8FF">10</span><span style="color: #E1E4E8">, </span><span style="color: #79B8FF">1</span><span style="color: #E1E4E8"> );</span></span>
<span class="line"></span>
<span class="line"><span style="color: #F97583">function</span><span style="color: #E1E4E8"> </span><span style="color: #B392F0">sc_log_checkout_and_check_price</span><span style="color: #E1E4E8">( $checkout_payload ) {</span></span>
<span class="line"><span style="color: #E1E4E8">    </span><span style="color: #6A737D">// 1) Log the full payload</span></span>
<span class="line"><span style="color: #E1E4E8">    </span><span style="color: #F97583">if</span><span style="color: #E1E4E8"> ( </span><span style="color: #79B8FF">defined</span><span style="color: #E1E4E8">( </span><span style="color: #9ECBFF">'WP_DEBUG'</span><span style="color: #E1E4E8"> ) </span><span style="color: #F97583">&&</span><span style="color: #E1E4E8"> </span><span style="color: #79B8FF">WP_DEBUG</span><span style="color: #E1E4E8"> ) {</span></span>
<span class="line"><span style="color: #E1E4E8">        </span><span style="color: #79B8FF">error_log</span><span style="color: #E1E4E8">( </span><span style="color: #9ECBFF">'SureCart Checkout Payload: '</span><span style="color: #E1E4E8"> </span><span style="color: #F97583">.</span><span style="color: #E1E4E8"> </span><span style="color: #79B8FF">print_r</span><span style="color: #E1E4E8">( $checkout_payload, </span><span style="color: #79B8FF">true</span><span style="color: #E1E4E8"> ) );</span></span>
<span class="line"><span style="color: #E1E4E8">    }</span></span>
<span class="line"></span>
<span class="line"><span style="color: #E1E4E8">    </span><span style="color: #6A737D">// 2) Set your target Price ID</span></span>
<span class="line"><span style="color: #E1E4E8">    $target_price_id </span><span style="color: #F97583">=</span><span style="color: #E1E4E8"> </span><span style="color: #9ECBFF">''</span><span style="color: #E1E4E8">;</span></span>
<span class="line"></span>
<span class="line"><span style="color: #E1E4E8">    </span><span style="color: #6A737D">// 3) Pull out the purchases list:</span></span>
<span class="line"><span style="color: #E1E4E8">    $found </span><span style="color: #F97583">=</span><span style="color: #E1E4E8"> </span><span style="color: #79B8FF">false</span><span style="color: #E1E4E8">;</span></span>
<span class="line"><span style="color: #E1E4E8">    </span><span style="color: #F97583">if</span><span style="color: #E1E4E8"> ( </span><span style="color: #79B8FF">isset</span><span style="color: #E1E4E8">( $checkout_payload</span><span style="color: #F97583">-></span><span style="color: #E1E4E8">purchases )</span></span>
<span class="line"><span style="color: #E1E4E8">      </span><span style="color: #F97583">&&</span><span style="color: #E1E4E8"> </span><span style="color: #79B8FF">isset</span><span style="color: #E1E4E8">( $checkout_payload</span><span style="color: #F97583">-></span><span style="color: #E1E4E8">purchases</span><span style="color: #F97583">-></span><span style="color: #E1E4E8">data )</span></span>
<span class="line"><span style="color: #E1E4E8">      </span><span style="color: #F97583">&&</span><span style="color: #E1E4E8"> </span><span style="color: #79B8FF">is_array</span><span style="color: #E1E4E8">( $checkout_payload</span><span style="color: #F97583">-></span><span style="color: #E1E4E8">purchases</span><span style="color: #F97583">-></span><span style="color: #E1E4E8">data )</span></span>
<span class="line"><span style="color: #E1E4E8">    ) {</span></span>
<span class="line"><span style="color: #E1E4E8">        </span><span style="color: #F97583">foreach</span><span style="color: #E1E4E8"> ( $checkout_payload</span><span style="color: #F97583">-></span><span style="color: #E1E4E8">purchases</span><span style="color: #F97583">-></span><span style="color: #E1E4E8">data </span><span style="color: #F97583">as</span><span style="color: #E1E4E8"> $purchase ) {</span></span>
<span class="line"><span style="color: #E1E4E8">            </span><span style="color: #6A737D">// Each $purchase is a SureCart\Models\Purchase object</span></span>
<span class="line"><span style="color: #E1E4E8">            </span><span style="color: #6A737D">// It has a 'price' attribute containing the purchased price ID</span></span>
<span class="line"><span style="color: #E1E4E8">            </span><span style="color: #F97583">if</span><span style="color: #E1E4E8"> ( </span><span style="color: #79B8FF">isset</span><span style="color: #E1E4E8">( $purchase</span><span style="color: #F97583">-></span><span style="color: #E1E4E8">price )</span></span>
<span class="line"><span style="color: #E1E4E8">              </span><span style="color: #F97583">&&</span><span style="color: #E1E4E8"> $purchase</span><span style="color: #F97583">-></span><span style="color: #E1E4E8">price </span><span style="color: #F97583">===</span><span style="color: #E1E4E8"> $target_price_id</span></span>
<span class="line"><span style="color: #E1E4E8">            ) {</span></span>
<span class="line"><span style="color: #E1E4E8">                $found </span><span style="color: #F97583">=</span><span style="color: #E1E4E8"> </span><span style="color: #79B8FF">true</span><span style="color: #E1E4E8">;</span></span>
<span class="line"><span style="color: #E1E4E8">                </span><span style="color: #F97583">break</span><span style="color: #E1E4E8">;</span></span>
<span class="line"><span style="color: #E1E4E8">            }</span></span>
<span class="line"><span style="color: #E1E4E8">        }</span></span>
<span class="line"><span style="color: #E1E4E8">    }</span></span>
<span class="line"></span>
<span class="line"><span style="color: #E1E4E8">    </span><span style="color: #6A737D">// 4) Log the result</span></span>
<span class="line"><span style="color: #E1E4E8">    </span><span style="color: #F97583">if</span><span style="color: #E1E4E8"> ( $found ) {</span></span>
<span class="line"><span style="color: #E1E4E8">        </span><span style="color: #79B8FF">error_log</span><span style="color: #E1E4E8">( </span><span style="color: #9ECBFF">"Price ID {</span><span style="color: #E1E4E8">$target_price_id</span><span style="color: #9ECBFF">} was successfully purchased."</span><span style="color: #E1E4E8"> );</span></span>
<span class="line"><span style="color: #E1E4E8">    } </span><span style="color: #F97583">else</span><span style="color: #E1E4E8"> {</span></span>
<span class="line"><span style="color: #E1E4E8">        </span><span style="color: #79B8FF">error_log</span><span style="color: #E1E4E8">( </span><span style="color: #9ECBFF">"Price ID {</span><span style="color: #E1E4E8">$target_price_id</span><span style="color: #9ECBFF">} was NOT purchased in this checkout."</span><span style="color: #E1E4E8"> );</span></span>
<span class="line"><span style="color: #E1E4E8">    }</span></span>
<span class="line"><span style="color: #E1E4E8">}</span></span>
<span class="line"></span>
<span class="line"></span>
```PHP

when that runs we get the following if we purchase the correct product

![Surecart checkout confirmed priceid](https://techarticles.co.uk/wp-content/uploads/2025/05/surecart-checkout-confirmed-priceid.png)