/api/v2/server-side-api/purchase/paddle/token/validate/ Validar compra de Paddle
Valida una compra utilizando el token de Paddle proporcionado, usando las credenciales de Paddle en la configuración de tu app dentro del Adapty Dashboard. Si la compra es válida, el historial de transacciones se importa desde Paddle al perfil en Adapty con el customer_user_id especificado. Si no existía ningún perfil con ese customer_user_id, se creará uno nuevo.
Request body
El ID de tu usuario en tu sistema
Token de un objeto de Paddle que representa una compra única. Puede ser un ID de transacción (txn_...) o un ID de suscripción (sub_...)
Responses
Compra validada correctamente
Schema
El ID interno de tu app
ID de perfil de Adapty
El ID de tu usuario en tu sistema
Un valor decimal que representa los ingresos totales en USD generados por el perfil
Parámetro interno
Hora de la respuesta en milisegundos; necesario para resolver una condición de carrera
Se permite un máximo de 30 atributos personalizados por perfil
La clave debe ser una cadena de texto de no más de 30 caracteres. Solo se permiten letras, números, guiones, puntos y guiones bajos
El valor del atributo no debe superar los 50 caracteres. Solo se permiten cadenas de texto y números decimales como valores
Array de objetos de nivel de acceso. Array vacío si el cliente no tiene niveles de acceso
Identificador del nivel de acceso
Store donde se adquirió el nivel de acceso
ID del producto en el store
ID del plan base en el store
ID de la transacción en el store
ID de la transacción original en el store
Detalles de la oferta, si se aplicó una oferta promocional o introductoria
Categoría de la oferta
One of: "introductory", "promotional", "offer_code", "win_back"
Tipo de oferta
One of: "free_trial", "pay_as_you_go", "pay_up_front"
ID de la oferta
Cuándo comienza el nivel de acceso
Cuándo se adquirió el nivel de acceso
Cuándo se adquirió originalmente el nivel de acceso
Cuándo expira el nivel de acceso
Cuándo se canceló la renovación
Cuándo se detectó el problema de facturación
Si el nivel de acceso está en período de gracia
Motivo de la cancelación
Array de objetos de suscripción. Array vacío si el cliente no tiene suscripciones
Store donde se adquirió la suscripción
ID del producto en el store
ID del plan base en el store
ID de la transacción en el store
ID de la transacción original en el store
Detalles de la oferta, si se aplicó una oferta promocional o introductoria
Categoría de la oferta
One of: "introductory", "promotional", "offer_code", "win_back"
Tipo de oferta
One of: "free_trial", "pay_as_you_go", "pay_up_front"
ID de la oferta
Entorno (Sandbox, Production)
Cuándo se adquirió la suscripción
Cuándo se adquirió originalmente la suscripción
Cuándo expira la suscripción
Cuándo se canceló la renovación
Cuándo se detectó el problema de facturación
Si la suscripción está en período de gracia
Motivo de la cancelación
Array de objetos de compras no suscritas. Array vacío si el cliente no tiene compras
Identificador único de la compra
Store donde se realizó la compra
ID del producto en el store
ID del plan base en el store
ID de la transacción en el store
ID de la transacción original en el store
Cuándo se realizó la compra
Entorno (Sandbox, Production)
Si se trata de un reembolso
Si se trata de una compra consumible
Example
{
"data": {
"app_id": "14c3d623-2f3a-455a-aa86-ef83dff6913b",
"profile_id": "3286abd3-48b0-4e9c-a5f6-ac0a006804a6",
"customer_user_id": "[email protected]",
"total_revenue_usd": 0,
"segment_hash": "8f45947bad31ab0c",
"timestamp": 1736436751469,
"custom_attributes": [
{
"key": "favourite_sport",
"value": "yoga"
}
],
"access_levels": [],
"subscriptions": [
{
"purchase_id": "5a7ab471-2299-45f7-ad69-1d395c1256e3",
"store": "app_store",
"store_product_id": "1year.premium",
"store_base_plan_id": null,
"store_transaction_id": "30002109551456",
"store_original_transaction_id": "30002109551456",
"purchased_at": "2022-10-12T09:42:50+00:00",
"environment": "Production",
"is_refund": false,
"is_consumable": false
}
],
"non_subscriptions": []
}
} Solicitud incorrecta
Schema
Origen del error
Array de mensajes de error
Nombre corto del error
Código de estado HTTP
Example
{
"errors": [
"No products found"
],
"error_code": "no_products_found",
"status_code": 400
} No autorizado
Schema
Origen del error
Array de mensajes de error
Nombre corto del error
Código de estado HTTP
Example
{
"errors": [
"Invalid API key"
],
"error_code": "unauthorized",
"status_code": 401
} Error interno del servidor
Schema
Origen del error
Array de mensajes de error
Nombre corto del error
Código de estado HTTP