Coming from Appcharge Payment Links

If you already integrated Appcharge Payment Links, most of what you built maps directly, and several steps disappear.

AppchargeAppside
Server calls Create Checkout Session, passes parsedUrl + purchaseId to the client exactly as receivedNot needed. Your server signs a player token, and the client calls purchase(sku, token)
Separate web-store login: Authenticate Player Callback, SSO / Player-ID / OTP deeplink / Game RedirectThe same player token logs the player into the store. No callback to your server
SDK callbacks onPurchaseSuccess(OrderResponseModel) / onPurchaseFailed / onPurchaseCanceledonPurchaseCompleted(order) / onPurchaseFailed / onPurchaseCanceled / onStoreClosed
Grant Award Callback to your serverorder.paid webhook, signed, retried 72 h, idempotency key
signature: t=…,v1=… HMAC-SHA256 over t.payloadx-appside-timestamp + x-appside-signature, HMAC-SHA256 over ts.rawBody
Validate purchaseId on your serverOptional getOrder(orderId) with your server key. The webhook is already the source of truth
Universal/Deep link setupThe same, and Studio generates the AASA / assetlinks files
iOS, Android, Unity SDKsThe same plus Web, React Native, Flutter, and server SDKs (see status)

Migration guide in short: keep your item-granting code, point it at our webhook, replace the checkout-session call with a player-token endpoint, and swap the SDK call.