• Skip to primary navigation
  • Skip to main content
  • Skip to footer

Codemotion Magazine

We code the future. Together

  • Discover
    • Events
    • Community
    • Partners
    • Become a partner
    • Hackathons
  • Magazine
    • Backend
    • Frontend
    • AI/ML
    • DevOps
    • Dev Life
    • Soft Skills
    • Infographics
  • Talent
    • Discover Talent
    • Jobs
    • Manifesto
  • Companies
  • For Business
    • EN
    • IT
    • ES
  • Sign in
ads

CodemotionMay 28, 2019

Nexi Dev Training Program: XPay backoffice API

Backend
facebooktwitterlinkedinreddit


Scopri di più sul programma e iscriviti gratuitamente!

Uno dei grandi vantaggi di utilizzare un gateway di pagamento rispetto a interfacciarsi con I singoli provider è la possibilità di avere un meccanismo di gestione comune e condiviso.

Il sistema XPay fornisce agli esercenti una piattaforma sicura e multicanale per le vendite E, che permette loro di accettare e gestire in modo facile e sicuro i pagamenti effettuati. Il portale web di backoffice garantisce una gestione integrata di tutte le transazioni a prescindere dal tipo di pagamento utilizzato. Inoltre, le stesse funzionalità disponibili tramite interfaccia web sono esposte anche tramite API permettendo agli esercenti che dispongono di un proprio gestionale di usufruire delle funzionalità tipiche del post-vendita (operatività e reportistica) con una semplice integrazione.

Le API sono disponibili sotto forma di una web application che accetta chiamate POST HTTP generate da un’applicazione dell’esercente che deve essere in grado di dialogare con il sistema di gestione ordini, e prelevare da esso i dati necessari per l’esecuzione delle transazioni, nonché di aggiornarlo con gli esiti ricevuti on-line.

Per tutte le operazioni sul backoffice gli endpoint di riferimento sono:

  • TEST https://int-ecommerce.nexi.it
  • PRODUZIONE https://ecommerce.nexi.it

 
Vediamo come possono essere eseguite alcune di queste operazioni.

Contabilizzazione Incasso o Rimborso

Tra le operazioni più comuni di ogni e-commerce ci sono sicuramente quelle relative alla contabilizzazione dell’incasso e allo storno con relativo rimborso di un ordine.
Il codice per la gestione di queste operazioni è molto simile e si differenzia principalmente per URI delle API utilizzate e alcuni parametri opzionali.

Le URI delle due operazioni sono:

  • INCASSO ecomm/api/bo/contabilizza
  • STORNO ecomm/api/bo/storna

 
Un esempio di codice Python compatto di per eseguire le operazioni di incasso o storno è il seguente:

Nel caso di storni, il tipo di storno effettuato dipende dallo stato contabile dell’ordine:

  • Se l’ordine è autorizzato, viene eseguito uno Storno Online solo per il totale dell’importo autorizzato con annullamento e ripristino disponibilità sulla carta;
  • Se l’ordine è in attesa contabilizzazione, viene eseguito uno Storno Contabile con annullamento richiesta incasso e con ripristino disponibilità sulla carta;
  • Se l’ordine è contabilizzato, , viene eseguito un Rimborso con relativo riaccredito al titolare della somma precedentemente incassata.

 
Nel caso di uno storno di una contabilizzazione parziale di PayPal è obbligatorio aggiungere anche il parametro idContabParzialePayPal (l’id della contabilizzazione parziale fornito da PayPal quando viene effettuata la contabilizzazione). In tutti gli altri casi (ordini non PayPal, storni di contabilizzazioni totali PayPal) il campo può essere omesso (per i merchant non abilitati a PayPal) o lasciato vuoto.

Elenco ordini e dettaglio ordine

Le API di backoffice permettono di ottenere tutti gli ordini che rispettano alcuni filtri di ricerca come il periodo temporale, lo stato e il canale di pagamento utilizzato.

Possibili valori per stato Ordine:

  1. Autorizzato
  2. Negato
  3. Annullato
  4. Incassato
  5. Rimborsato
  6. nonCreato
  7. incParziale
  8. rimbParziale

 
Possibili valori per il canale:

  1. All
  2. MyBank
  3. CartaCredito
  4. PayPal
  5. sofort

 
Vediamo un semplice esempio in Python:

Per avere Maggiori dettagli su un ordine specifico si può adottare invocare l’API di situazioneOrdine passando come parametro il codice della transazione volute come in questo esempio:

Related Posts

Start building REST APIs with Django REST Framework

raffaelegrieco.it
May 13, 2025

Top 10 online platforms to practice Python every dev should know

Lucilla Tomassi
May 13, 2025

.NET Refactoring Series: Episode 1 — How to Approach Service Refactoring

giovanni-ferrari
April 2, 2025

Queueing Without a Queue: The PostgreSQL Hack

Puppo92
March 13, 2025
Share on:facebooktwitterlinkedinreddit
Codemotion
Codemotion
Articles wirtten by the Codemotion staff. Tech news, inspiration, latest treends in software development and more.
Communities, not just a buzzword at the Codemotion Amsterdam conference
Previous Post
How to comply with GDPR in a serverless world
Next Post

Footer

Discover

  • Events
  • Community
  • Partners
  • Become a partner
  • Hackathons

Magazine

  • Tech articles

Talent

  • Discover talent
  • Jobs

Companies

  • Discover companies

For Business

  • Codemotion for companies

About

  • About us
  • Become a contributor
  • Work with us
  • Contact us

Follow Us

© Copyright Codemotion srl Via Marsala, 29/H, 00185 Roma P.IVA 12392791005 | Privacy policy | Terms and conditions