L'objet Payment décrit un achat en plusieurs fois dans sa totalité : montant et date de l'achat, informations client et échéancier.

La plupart des attributs sont en lecture seule: seuls ceux mentionnés dans le paragraphe Créer un payment ci-après peuvent être renseignés.

Champ

Type

Description

id

string

Identifiant du Payment

amount_left_to_pay

integer

Montant en centimes restant à payer par le client

annual_interest_rate

integer

TAEG en bps applicable pour les paiements à crédit

can_be_charged

boolean

true si charge_first_installment peut être appelé sur ce paiement directement côté serveur, afin d'éviter au client de repasser par la page de paiement Alma et ainsi fluidifier l'UX.
En cas de false, le client doit être redirigé vers url pour finaliser sa commande. Les raisons pour lesquelles ce flag peut être false sont multiples : paiement pas encore scoré, utilisation de cartes, mandat de prélèvement SEPA non accepté etc.

country_of_service

string

Pays qui détermine les licences applicables et les régles de régulation du paiement.

created

timestamp

Date de création du Payment

billing_address

Address

Adresse de facturation de ce paiement, voir section Address

customer

Customer

Client, voir section Customer

customer_cancel_url

string

Url permettant au client de revenir au site marchand sans finaliser son paiement. L'ID du paiement est ajouté en paramètre pid de l'URL fournie, ce qui permet au marchand de procéder à des annulations de commandes, libération de stocks ou autre traitement si nécessaire.

custom_data

JSON

Objet JSON de format libre qui vous permet d'associer au paiement Alma des données provenant de votre base de données. Typiquement utilisé pour retrouver facilement l'identifiant du panier/de la commande à l'origine du paiement.

customer_fee

integer

Frais payés par le client, en plus du montant du panier

customer_interest

integer

Intérêts payés par le client, en plus du montant du panier

deferred_months

integer

Nombre de mois précédant la première échéance.

deferred_days

integer

Nombre de jours précédant la première échéance.

deferred_trigger

boolean

Est-ce un paiement différé à une date ultérieure encore inconnue.

ipn_callback_url

string

Url appelée de façon asynchrone par nos serveurs une fois le paiement effectué, afin de valider la commande auprès de la boutique au cas où le client aurait fermé son navigateur prématurément, ou rencontré un problème réseau lors de la redirection vers l'URL return_url.

merchant_name

string

Nom du marchand ayant créé le paiement

orders

list of Order

Liste des commandes payées avec ce paiement, voir section Order

preferred_payment_method

string

Méthode de paiement souhaitée, peut être card (défaut) ou bank_debit (prélèvement SEPA)

payment_plan

list

Liste des prélèvements, avec pour chacun:

payment_plan[purchase_amount]

integer

Montant de l'échéance

payment_plan[original_purchase_amount]

integer

Montant original de l'échéance

payment_plan[customer_fee]

integer

Frais payés par le client, en plus du montant du panier

payment_plan[customer_interest]

integer

Montant des intérêts dans la cas des credits

payment_plan[due_date]

timestamp

Date à laquelle est dû ce prélèvement

payment_plan[state]

string

État du prélèvement, valeurs possibles : pending (pas encore prélevé), paid (prélevé), covered (incident de paiement couvert par Alma). L'état d'un prélèvement ne renseigne pas sur l'existence d'un remboursement (partiel ou total) opéré sur le paiement associé au prélèvement ; voir refunds pour connaître la liste des remboursements (afin, par exemple, de déterminer si un remboursement total a été opéré sur le paiement).

payment_plan[time_delta_from_start]

{"months": integer, "days": integer}"

Différence entre la date due et la date de la première échéance. Le champ est présent uniquement si le paiement est deferred trigger.

purchase_amount

integer

Montant du panier

refunds

list of Refund

Liste des remboursements opérés sur ce paiement, voir section Refund

return_url

string

Url vers laquelle le client sera redirigé une fois le paiement effectué, généralement là où le marchand valide la commande

sepa_debit_enabled

boolean

Indique si Alma accepte le prélèvement SEPA pour ce paiement. Est toujours true en mode de test ; veuillez contacter notre support ([email protected]) si vous souhaitez l'activer en production.

shipping_address

Address

Adresse de livraison de la commande, voir section Address

state

string

Etat du paiement : not_started (le paiement a été créé), scored_no (le paiement en plusieurs fois est refusé par Alma), scored_yes (le paiement en plusieurs fois est accepté par Alma), scored_maybe (Alma a besoin de plus d'informations pour décider de l'acceptation du paiement), in_progress (paiement en cours – au moins une échéance a été payée, mais il reste des échéances non payées) ou paid (le client ne doit plus d'argent à Alma). Note : même dans les états scored_no et scored_maybe, un paiement peut finalement être payé en une fois par le client : si c'est le cas l'état passera alors à paid.

url

string

Url de la page Alma correspondant à ce paiement. Quand le paiement est paid cette page devient un résumé de l'état du paiement et des éventuels retards de paiement pour le client.

using_sepa_debit

boolean

Indique si le paiement utilise le prélèvement SEPA ou la carte ; nécessite pour être true que le prélèvement SEPA soit activé sur votre compte (contactez notre support pour cela - [email protected]) et que ce soit la preferred_payment_method de ce Payment.

expired_at

timestamp

Date à laquelle le paiement est considéré comme expiré s'il n'a pas été confirmé par le client.

locale

string

Indique la langue dans laquelle communiquer avec le client: fr, en, it, es, de, nl ou nl_BE

transaction_country

string

Indique le pays dans lequel la vente à lieu dont découle les conditions générales de vente.

Example d'objet Payment au format JSON :

{
    "id": "payment_11h3ch442l36V9P4aASCwi4kwAgYkhkSiw",
    "billing_address": null,
    "can_be_charged": false,
    "created": 1552378923,
    "custom_data": {},
    "customer": {
        "id": "customer_11h3ch7UDyyCiuHCKy02y4EeWkwd3JuHUb",
        "created": 1552378923,
        "first_name": "Martin",
        "last_name": "Dupont",
        "addresses": [],
        "email": "[email protected]",
        "phone": "06 12 34 56 78",
        "birth_date": null,
        "birth_place": {},
        "card": {
            "id": "card_11h3cnA3x6oSqamXY0EmGGaiwu0kVhauep",
            "created": 1552379299,
            "exp_month": 11,
            "exp_year": 2019,
            "last4": "4242",
            "country": "FR",
            "funding": "debit",
            "brand": "visa",
            "three_d_secure_possible": true,
            "verified": true,
            "psp_representations": {
                "stripe": {
                    "customer_id": "cus_EgSusITxQmwGI8",
                    "original_source_id": "src_1ED5yCKi1KnRqlDtIF87iILn"
                }
            }
        },
        "banking_data_collected": false
    },
    "customer_cancel_url": null,
    "customer_fee": 378,
    "deferred_months": 0,
    "deferred_days": 0,
    "merchant_name": "The Alma Shop",
    "orders": [],
    "payment_plan": [
        {
            "purchase_amount": 7000,
            "customer_fee": 378,
            "due_date": 1552378923,
            "state": "pending"
        },
        {
            "purchase_amount": 7000,
            "customer_fee": 0,
            "due_date": 1555057323,
            "state": "pending"
        },
        {
            "purchase_amount": 7000,
            "customer_fee": 0,
            "due_date": 1557649323,
            "state": "pending"
        }
    ],
    "preferred_payment_method": "card",
    "purchase_amount": 21000,
    "refunds": []
    "return_url": "https://merchant.com/after_payment.html?pid=payment_11h3ch442l36V9P4aASCwi4kwAgYkhkSiw",
    "sepa_debit_enabled": false,
    "shipping_address": {
        "id": "address_11h3ch94QEYlpeX7w0I8MIkog4YK5F1ySa",
        "created": 1552378923,
        "first_name": null,
        "last_name": null,
        "company": null,
        "line1": "1 rue de Rivoli",
        "line2": null,
        "city": "Paris",
        "postal_code": "75004",
        "country": "France",
        "email": null,
        "phone": null
    },
    "state": "scored_yes",
    "url": "https://pay.getalma.eu/11h3ch442l36V9P4aASCwi4kwAgYkhkSiw",
    "using_sepa_debit": false,
    "expired_at": 1630775122,
    "locale": "fr",
}