Xsolla-logo

Créer une commande à partir de tous les objets d'un panier spécifiqueClient-side

post/v2/project/{project_id}/payment/cart/{cart_id}

Utilisé pour l'intégration client-serveur. Crée une commande à partir de tous les objets d'un panier spécifique et génère un jeton de paiement pour cette commande. La commande créée aura le statut new.

L'adresse IP du client est utilisée pour déterminer le pays de l'utilisateur, qui est ensuite utilisé pour appliquer la devise appropriée et les modes de paiement disponibles pour la commande.

Pour ouvrir l'interface de paiement dans une nouvelle fenêtre, utilisez le lien suivant : https://secure.xsolla.com/paystation4/?token={token}, où {token} est le jeton reçu.

À des fins de test, utilisez cette URL : https://sandbox-secure.xsolla.com/paystation4/?token={token}.

Remarque

Étant donné que cette méthode se base sur l'adresse IP pour déterminer le pays de l'utilisateur et sélectionner la devise de la commande, il est important de l'utiliser exclusivement côté client et non côté serveur. L'utilisation de cette méthode côté serveur pourrait entraîner une détermination incorrecte de la devise, ce qui pourrait affecter les modes de paiement dans Pay Station.
SecurityAuthForCart
Request
path Parameters
project_id
required
integer

ID de projet. Ce paramètre se trouve dans le Compte éditeur à côté du nom du projet.

Example: 44056
cart_id
required
string

Cart ID.

Example: custom_id
Request Body schema: application/json
currency
string

Devise du prix de la commande. Code de devise à trois lettres selon ISO 4217. Consultez la documentation pour obtenir des informations détaillées sur les devises prises en charge par Xsolla.

custom_parameters
object [ 1 .. 200 ] properties

Paramètres spécifiques au projet.

locale
string

Langue de la réponse.

sandbox
boolean
Default: false

Crée une commande en mode bac à sable. L'option est disponible pour les utilisateurs spécifiés dans la liste des utilisateurs de l'entreprise.

object

Paramètres pour la configuration de la procédure de paiement et de l'interface de paiement pour l'utilisateur.

payment_method
integer >= 1

ID de mode de paiement.

object
delay
integer

Délai après lequel l'utilisateur est automatiquement redirigé vers l'URL de retour.

redirect_button_caption
string

Légendes localisées des boutons de redirection.

redirect_conditions
string

Statut du paiement déclenchant la redirection de l'utilisateur vers l'URL de retour.

Enum: "none" "successful" "successful_or_canceled" "any"
status_for_manual_redirection
string

Statut de paiement déclenchant l'affichage d'un bouton de redirection de l'utilisateur vers l'URL de retour.

Enum: "none" "vc" "successful" "successful_or_canceled" "any"
return_url
string <uri> <= 1000 characters

Page vers laquelle l'utilisateur est redirigé après un paiement. Les paramètres user_id, foreigninvoice, invoice_id et status sont automatiquement ajoutés au lien.

object

Paramètres d'interface.

currency_format
string

Définissez sur code pour afficher un code de devise à trois lettres selon la norme ISO 4217 dans l'interface de paiement. Par défaut, le symbole de la devise est affiché à la place du code de devise à trois lettres.

object

Paramètres de l'interface pour la version de bureau.

object

Paramètres de l'en-tête.

close_button
boolean
Default: false

Détermine l'affichage du bouton Fermer dans l'interface de paiement sur ordinateur. Un clic sur ce bouton ferme l'interface de paiement et redirige l'utilisateur vers l'URL passée dans le paramètre settings.return_url. Défini sur false par défaut.

is_visible
boolean

Détermine l'affichage de l'en-tête dans l'interface de paiement.

type
string
Default: "normal"

Apparence de l'en-tête. La valeur peut être compact (le nom du projet et l'ID utilisateur ne s'affichent pas) ou normal (par défaut).

Enum: "compact" "normal"
visible_logo
boolean

Si true, le logo est affiché dans l'en-tête. Pour télécharger l'image, ouvrez votre projet dans Publisher Account et allez dans la section Pay Station > Settings.

visible_name
boolean

Détermine l'affichage du nom du projet dans l'en-tête.

visible_purchase
boolean
Default: true

Détermine l'affichage de la description de l'achat (purchase.description.value) dans l'en-tête. Défini sur true par défaut.

object
visible_virtual_currency_balance
boolean
Default: true

Détermine l'affichage de cet élément dans l'interface de paiement.

is_cart_open_by_default
boolean
Default: false

Affichage de la liste des objets dans le panier lors de l'ouverture de la version mobile de l'interface de paiement. Si true, la liste s'affiche dans une vue étendue. Si false(valeur par défaut) ou si le paramètre n'est pas passé, la liste s'affiche dans une vue réduite.

is_independent_windows
boolean
Default: false

Détermine la redirection des utilisateurs du navigateur du lanceur intégré (WebView) vers leur navigateur par défaut pour effectuer un achat.

is_payment_methods_list_mode
boolean
Default: false

Détermine l'affichage de la liste des modes de paiement disponibles dans le pays de l'utilisateur à l'ouverture de l'interface de paiement. Si false (par défaut), le mode de paiement passé dans le paramètre settings.payment_method ou le mode sélectionné selon l'algorithme du PayRank s'affiche.

is_prevent_external_link_open
boolean
Default: false

Détermine la désactivation des liens de redirection vers une ressource externe. Un clic sur un lien externe déclenche l'envoi de l'événement external-link-open via le mécanisme postMessage. L'adresse du lien de redirection est passée dans le paramètre url.

is_show_close_widget_warning
boolean
Default: true

Détermine l'affichage d'une infobulle sur le traitement de la transaction au passage de la souris sur l'icône × avant la fermeture de la page de paiement. Défini sur false, ou si le paramètre n'est pas passé, l'infobulle ne s'affiche pas.

is_three_ds_independent_windows
boolean
Default: false

Détermine l'ouverture de la vérification 3-D Secure dans une nouvelle fenêtre du navigateur. Passez true si vous utilisez une politique de sécurité du contenu (CSP).

layout
string

Emplacement des principaux éléments de l'interface de paiement. Vous pouvez ouvrir l'interface de paiement à l'intérieur de votre jeu et/ou permuter les colonnes contenant des informations sur la commande et les modes de paiement. Reportez-vous aux instructions de customisation pour des informations détaillées.

Enum: "embed" "column_reverse" "embed_column_reverse"
object
object
close_button
boolean
Default: false

Détermine l'affichage du bouton Fermer dans l'interface de paiement sur appareil mobile. Un clic sur ce bouton ferme l'interface de paiement et redirige l'utilisateur vers l'URL passée dans le paramètre settings.return_url.

mode
string

Mode d'interface dans l'interface de paiement. L'unique valeur possible est user_account. Dans ce mode, l'en-tête ne contient que le menu de navigation du compte, et l'utilisateur ne peut ni sélectionner un produit ni effectuer un paiement. Ce mode est disponible uniquement sur la version de bureau.

Value: "user_account"
theme
string
Default: "63295a9a2e47fab76f7708e1"

Thème d'interface de paiement. Les valeurs possibles sont : 63295a9a2e47fab76f7708e1 pour le thème clair (par défaut) ou 63295aab2e47fab76f7708e3 pour le thème foncé. Vous pouvez également créer un thème personnalisé et passez son ID dans ce paramètre.

Enum: "63295a9a2e47fab76f7708e1" "63295aab2e47fab76f7708e3"
object

Informations de compte utilisateur.

object

Page My account.

enable
required
boolean
Default: false

Détermine l'affichage du sous-menu. La valeur par défaut est false.

order
required
integer >= 1

Position du sous-menu dans le menu.

object

Le sous-menu Mes comptes de paiement.

enable
required
boolean
Default: false

Détermine l'affichage du sous-menu. La valeur par défaut est false.

object

Sous-menu Gestion des abonnements.

enable
required
boolean
Default: false

Détermine l'affichage du sous-menu. La valeur par défaut est false.

order
required
integer >= 1

Position du sous-menu dans le menu.

Responses
200

La commande a été créée avec succès.

422

Panier non valide. Vérifiez que le panier existe, qu'il n'est pas vide et que tous les objets qu'il contient ne sont pas gratuits.

Request samples
application/json
{
  • "custom_parameters": {
    },
  • "sandbox": true,
  • "settings": {
    }
}
Response samples
application/json
{
  • "order_id": 641,
  • "token": "f4puMEFFDZcx9nv5HoNHIkPe9qghvBQo"
}