Aggiungi pagamenti

Nell'ambito dell'integrazione end-to-end per gli appuntamenti del Centro azioni, puoi consentire ai tuoi commercianti di ricevere il pagamento dagli utenti quando effettuano una prenotazione, un appuntamento o una prenotazione. Google collabora con gli elaboratori dei pagamenti per configurare la tokenizzazione. Gli elaboratori dei pagamenti utilizzano quindi token univoci per pagare i commercianti in modo sicuro.

Per le prenotazioni con pagamento sicuro, mostriamo un modulo Informazioni di pagamento nel flusso di pagamento. Consente all'utente di inserire i dati della carta di credito.

È disponibile il supporto per 3DS1 e 3DS2. Fai riferimento a questo tutorial sull'implementazione.

Idoneità

Affinché i tuoi commercianti possano ricevere i pagamenti tramite il Centro azioni, devi soddisfare i seguenti requisiti:

  1. Utilizza un elaboratore dei pagamenti supportato. L'elenco più recente dei processori supportati è disponibile sul sito web di Google Pay.
  2. Accettare i pagamenti tokenizzati in conformità con l'elaboratore.
  3. Completa la procedura di verifica dell'identità e dell'attività descritta qui.
  4. Il pagamento non può essere abilitato per le prenotazioni che richiedono una conferma asincrona .

Modifiche ai feed e al server di prenotazione per i pagamenti

I pagamenti vengono effettuati tramite una procedura di attivazione a livello di commerciante. Devi abilitare i pagamenti per i commercianti che devono riceverli per uno qualsiasi dei loro servizi. Per abilitare i pagamenti, è necessario apportare modifiche ai feed e al server di prenotazione.

Feed

  • Feed commerciante: specifica i dati di pagamento tramite il tokenization_parameter impostato nel campo tokenization_config. L'insieme dipende dall'elaboratore dei pagamenti scelto. Si tratta dello stesso insieme di paymentMethodTokenizationParameters.parameters che verrebbe trasmesso a Google Pay se eseguissi l'integrazione con l'app.
  • Feed di servizi/disponibilità: specifica i requisiti di pagamento in base al caso d'uso appropriato. Per maggiori dettagli, consulta Casi d'uso per i pagamenti.

Server di prenotazione

Casi d'uso per i pagamenti

Per decidere se accettare pagamenti per ciascuno di questi casi d'uso, consulta le nostre norme relative ai pagamenti e assicurati di poter rispettare tutte le norme pertinenti.

Esistono casi d'uso per i pagamenti:

Per ulteriori informazioni su come implementare ciascuno di questi casi d'uso, consulta il tutorial sulla configurazione dei pagamenti.

Completare le prenotazioni prepagate

La Figura 1 mostra il flusso di attività tra gli utenti, tu (il partner di pianificazione), Google e l'elaboratore dei pagamenti.

Figura 1: diagramma della sequenza di prenotazioni prepagate
Figura 1: diagramma della sequenza di prenotazioni prepagate
  • Un pagamento deve corrispondere al 100% dell'importo del costo del servizio. In altre parole, i servizi devono essere pagati per intero al momento della prenotazione.
Modifiche ai feed di servizi

Cauzioni e commissioni per mancato arrivo

I versamenti e le commissioni per il mancato arrivo vengono configurati in modi simili. La Figura 2 mostra il flusso di queste attività tra gli utenti, tu (il partner di pianificazione), Google e l'elaboratore dei pagamenti.

Figura 2: diagramma della sequenza delle prenotazioni relative a versamenti o commissioni di assenza
Figura 2: diagramma di sequenza per versamenti o tariffe di mancato arrivo

È possibile utilizzare cauzioni e commissioni per assenza per garantire la presenza di un utente al momento della prenotazione.

  • È possibile addebitare un deposito sulla carta di credito dell'utente sia anticipatamente sia in un secondo momento.
  • Potrebbe essere addebitata una tariffa per il mancato arrivo all'utente se non viene mostrato al momento della prenotazione.
  • Se necessario, sia le cauzioni che le commissioni di assenza possono essere applicate insieme a una prenotazione.
  • Anche se non è richiesto alcun pagamento anticipato, il server di prenotazione deve rispondere alla richiesta CreateBooking con un PaymentInformation contenente un payment_transaction_id, che deve essere univoco. Il payment_transaction_id non deve essere necessariamente fornito dall'elaboratore dei pagamenti, ma può essere generato dal server di prenotazione.
Modifiche ai servizi o ai feed di disponibilità

I cauzioni e le commissioni di mancato arrivo possono essere specificati a livello di Servizio o a livello di slot di Disponibilità per un commerciante. Se le specifichi a livello di slot di disponibilità, le definizioni del livello di servizio vengono sostituite.

  • Per abilitare i versamenti, imposta il campo deposit a livello di slot di servizio o di disponibilità.
  • Per abilitare le tariffe di assenza, imposta il campo no_show_fee a livello di area di servizio o di disponibilità.
  • Imposta il campo require_credit_card su REQUIRE_CREDIT_CARD_CONDITIONAL a livello di slot di servizio o di disponibilità.
  • (Facoltativo) Imposta prepayment_type su REQUIRED o OPTIONAL.

Carta di credito richiesta

Al momento della prenotazione, potrebbero esserci altri casi d'uso che richiedono una carta di credito.

  • Imposta il campo require_credit_card su REQUIRE_CREDIT_CARD_ALWAYS a livello di Servizio o di slot Disponibilità per un commerciante.

Cancellazione e rimborsi

Gli annullamenti e i rimborsi vengono avviati dal partner (tu) o dall'utente tramite il Centro azioni. In entrambi i casi, devi rispettare il CancellationPolicy impostato al livello di servizio e comunicato all'utente al momento del pagamento della prenotazione.

Se non fornisci CancellationPolicy, si presume che qualsiasi annullamento all'interno del periodo di annullamento definito da min_advance_online_canceling impostato al livello di servizio sia rimborsabile. Se min_advance_online_canceling non viene definito è 0 (significa annullabile in qualsiasi momento).

Se devi disabilitare l'annullamento dal Centro azioni, contatta il tuo POC di Google.

Modifiche alle RTU
  • Dopo aver fornito un rimborso all'utente, devi inviare una RTU di prenotazione aggiornata per modificare lo stato di pagamento della prenotazione. Imposta update_mask su status,payment_information.prepayment_status e imposta payment_information.prepayment_status = PREPAYMENT_REFUNDED e status = CANCELED.
    • Usa i nuovi BookingStatus = CANCELED e PrepaymentStatus = PREPAYMENT_REFUNDED. Il valore enum CANCELED_AUTOMATIC_REFUND è deprecato sia per i modelli dell'API Maps Booking che per i modelli gRPC.
Passa al server di prenotazione