# Other Polar methods (https://talivia.com/docs/revenue-guides/polar/other-methods)



Some integrations create customers or orders through another billing layer and cannot pass `talivia_session_id`. In that case, link the visitor to the same customer identity that appears in Polar webhooks.

## Use a stable external customer ID [#use-a-stable-external-customer-id]

Set Polar's `external_customer_id` to your own immutable user ID whenever your integration supports it. Then identify the signed-in visitor with that value.

```javascript title="Identify the application customer"
window.talivia.identify(user.id, {
  email: user.email,
  externalCustomerId: user.id,
  providerName: 'polar',
});
```

If your backend already knows the Polar customer UUID, include it too.

```javascript title="Identify the Polar customer"
window.talivia.identify(user.id, {
  email: user.email,
  externalCustomerId: user.id,
  providerName: 'polar',
  polarCustomerId: 'YOUR_POLAR_CUSTOMER_ID',
});
```

Use [Checkout API](https://talivia.com/docs/revenue-guides/polar/checkout-api) whenever you control checkout creation. Direct session metadata is deterministic; customer identity is a fallback for checkouts and the primary signal for renewals.

If none of session metadata, a checkout return, external customer ID, Polar customer ID, or matching verified email is available, Talivia will still record the order but show it as unattributed.
