Configurazione Anagrafiche

Panoramica

Zippy Infinity permette l’inserimento e/o la modifica delle informazioni di un cliente esistente sia per raccogliere informazioni relative a potenziali clienti o per inserire a tutti gli effetti una nuova anagrafica per emettere subito un documento di vendita.

Le informazioni da inserire per un nuovo cliente, oltre a quelle base come ragione sociale e partita iva/codice fiscale, sono più o meno rilevanti, obbligatorie e personalizzate da azienda a azienda.

Pertanto è stato costruito un sistema tramite la configurazione di un file XML che permette ad ogni azienda di costruirsi la rappresentazione delle informazioni da raccogliere.

Clienti in Zippy

Nei prodotti di Zippy il cliente ha un codice di lunghezza fissa di 8 caratteri. Il cliente sede e il cliente destinazione diversa vengono rappresentati con 2 o più anagrafiche distinte collegate tra di loro con i primi 6 caratteri uguali. Gli ultimi 2 caratteri rappresentano se 00 cliente intestazione mentre se diverso da 00 cliente destinazione. L’intestazione del cliente è sempre obbligatoria pertanto se il documento viene sempre emesso al cliente destinazione è sempre necessario avere nell’archivio dei clienti il cliente intestazione.

Funzionalità

La generazione di un nuovo cliente produrrà nell’archivio ANAGRAFE un nuovo elemento intestazione e n elementi destinazione se previsto l’inserimenti di sedi diverse.

I clienti nuovi saranno identificati con la prima parte del codice “NEW”. Nel caso in cui si andrà invece a modificare un cliente questo manterrà il suo codice. In fase di trasmissione dati verso il gestionale, tutti  i nuovi clienti e i clienti modificati verranno inviati nel flusso tramite file XML.

Nella dichiarazione della configurazione tramite XML è possibile:

  • Determinare se la progressione del codice deve essere gestita con una tabella interna di sistema del contatore permanente o se la progressione deve essere determinata selezionando l’ultima anagrafica nuova presente in archivio. Nel secondo caso il contatore non sarà permanete ma a ogni ricezione delle anagrafiche dal gestionale verrà resettato.
  • Determinare se la modifica di anagrafiche esistenti in archivio è disabilitata. Questo vuol dire che non è possibile modificare le informazioni dei clienti inviati dal gestionale ma neanche le informazioni di un cliente inserito come nuovo.
  • Determinare il numero di destinazioni da richiedere nel momento in cui si inserisce un nuovo cliente.
  • Definire le informazioni da richiedere specificando il campo, il tipo, l’etichetta, l’obbligatorietà e inoltre è possibile vincolare l’inserimento del dato in una lista di valori possibili.
  • Definire la richiesta di informazioni del tracciato ANAGRAFE di Zippy ma anche definire la richiesta di informazioni personalizzate e che quindi non appartengono a questo archivio.

Struttura XML

La configurazione si basa sulla definizione XML.



Di seguito verrà documentata la struttura e la definizione dei nodi XML:

Livello tagNome tag xmlTipoDescrizione funzionaleFormato e valori ammessi
1ANAGRAFE_CUSTOMÈ il nodo root pertanto deve essere chiuso al termine della definizione completa e non deve essere replicato.
1.1NUMERO_DESTINAZIONIInteroIdentifica il numero di destinazioni da richiedere.
1.2NUMERO_DESTINAZIONI_OBBIGATORIEStringaIdentifica le destinazioni obbligatorie separate da ,.
Ad esempio se si ha la definizione di 3 destinazioni si può definire che la numero 1 e 2 sono obbligatorie: 1,2
1.3ABILITA_CONTATORE_NEWInteroSe 1 determina che il codice del nuovo cliente avrà una progressione utilizzando un contatore interno di sistema permanente.1 = SI | 0 = NO
1.4DISABILITA_MODIFICAInteroSe 1 determina che non è possibile modificare i dati di una anagrafica esistente.1 = SI | 0 = NO
1.5DISABILITA_NUOVAInteroSe 1 determina che non è possibile inserire una nuova anagrafica di cliente.1 = SI | 0 = NO
1.6MODIFICA_CLIENTE_CREA_NUOVOInteroSe 1 determina che in fase di modifica anagrafica cliente viene comunque creato un nuovo cliente e pertanto in fase di compilazione non vengono presentati i dati dell'anagrafica che si sta compilando.1 = SI | 0 = NO
1.7ANAGNodo di definizione di una tipologia di anagrafica (o intestazione o destinazione). Può essere ripetuta l’apertura e quindi la definizione 2 volte; una per la definizione dell’intestazione e una per la definizione della destinazione.
1.7.1INTESTAZIONEStringaDetermina se si sta andando a definire l’inserimento dei dati cliente intestazione o destinazione.SI|NO
1.7.2OBBLIGATORIAStringaDetermina se l’inserimento della sua definizione è obbligatoria o meno. Utilizzare per la definizione dell’anagrafica destinazione.SI|NO
1.7.3DEFINIZIONEApertura nodo definizione campi e quindi informazioni da richiedere.
La sua apertura e quindi chiusura deve essere presente una sola volta all’interno del nodo 1.4 .
1.7.3.1CAMPOApertura nodo definizione campo. Il nodo deve essere definito n volte per tutti i campi da configurare all’interno del nodo 1.4.3 .
1.7.3.1.1OBBLIGATORIOStringaDetermina se la valorizzazione del dato deve essere obbligatoria.SI|NO
1.7.3.1.2CODICEStringaCodice del campo del tracciato ANAGRAFE. Se si vuole richiedere un campo non presente nel tracciato ANAGRAFE il codice deve iniziare con il carattere underscore (_).
1.7.3.1.3DESCRIZIONEStringaEtichetta da visualizzare nella richiesta del dato.
1.7.3.1.4TIPOLOGIAStringaTipologia del valore del campo.NUMERICO| DECIMALE| TESTO| CHECK| DATA| PARTITAIVA| CODICEFISCALE|ORARIO|TELEFONO|EMAIL|MULTIMEDIA
1.7.3.1.5DEFAULTStringaValore di default del campo
1.7.3.1.6NASCOSTOStringaDetermina se la richiesta è nascosta. Utilizzare per inserire i dati dell’anagrafica del cliente di default e quindi fissi. Ad esempio il codice del documento di default o lo stato.SI|NO
1.7.3.1.7OBBLIGATORIOSEVUOTOStringaDa utilizzare quando l’obbligatorietà dell’informazione è determinata dall’inserimento di in altra informazione. Ad esempio per la partita iva e codice fiscale si vuole che venga inserita o una o l’altra. Inserire nel caso in questo nodo il codice del campo.
1.7.3.1.8OBBLIGATORIOSECAMPOVALOREStringaDa utilizzare quando l’obbligatorietà dell’informazione è determinata dal valore inserito in un altro campo:
campo=valore.
Esempio:_TipoFigura=F
1.7.3.1.9OBBLIGATORIOSEVALORIZZATOStringaDefinire i codici degli altri campi separati da virgola, che se valorizzati obbligano a compilare il campo corrente
1.7.3.1.10UNIVOCO
StringaDetermina se il valore all’interno di tutto l’archivio ANAGRAFE deve essere univoco. Ad esempio la partita iva.SI|NO
1.7.3.1.11VINCOLIDefinire il nodo quando si vuole vincolare il dato da inserire in una lista di valori.
1.7.3.1.11.1VINCOLODefinizione di un elemento del vincolo. Il nodo deve essere definito n volte per il numero dei valori lista da definire.
1.7.3.1.11.1.1VALOREStringaValore da associare al dato se selezionato.
1.7.3.1.11.1.2DESCRIZIONEStringaDescrizione da visualizzare nella scelta nella lista dei valori possibili.
1.7.3.1.12VINCOLIFROMTABELLAStringaDefinire il nodo quando si vuole vincolare l'inserimento ai valori definiti e recuperati da una query all'interno delle tabelle del database di zippy
1.7.3.1.12.1QUERYStringaDefinire la query di selezione dalle tabelle dei dati di Zippy. Recuperare sempre una colonna che ne definisce il codice e una che ne definisce il valore.
Ci deve essere sempre la AS CODICE e AS DESCRIZIONE


<ANAGRAFE_CUSTOM>
  <NUMERO_DESTINAZIONI>1</NUMERO_DESTINAZIONI>
  <ABILITA_CONTATORE_NEW>1</ABILITA_CONTATORE_NEW>
  <DISABILITA_MODIFICA>0</DISABILITA_MODIFICA>
  <ANAG>
    <INTESTAZIONE>SI</INTESTAZIONE>
    <OBBLIGATORIA>SI</OBBLIGATORIA>
    <DEFINIZIONE>
      <CAMPO>
        <OBBLIGATORIO>SI</OBBLIGATORIO>
        <CODICE>_TIPOLOGIA</CODICE>
        <DESCRIZIONE>Tipologia</DESCRIZIONE>
        <TIPO>TESTO</TIPO>
        <VINCOLI>
          <VINCOLO>
            <VALORE>BAR</VALORE>
            <DESCRIZIONE>BAR</DESCRIZIONE>
          </VINCOLO>
          <VINCOLO>
            <VALORE>ALBERGO</VALORE>
            <DESCRIZIONE>ALBERGO</DESCRIZIONE>
          </VINCOLO>
          <VINCOLO>
            <VALORE>PANIFICIO</VALORE>
            <DESCRIZIONE>PANIFICIO</DESCRIZIONE>
          </VINCOLO>
          <VINCOLO>
            <VALORE>PASTICCERIA</VALORE>
            <DESCRIZIONE>PASTICCERIA</DESCRIZIONE>
          </VINCOLO>
          <VINCOLO>
            <VALORE>RISTORANTE</VALORE>
            <DESCRIZIONE>RISTORANTE</DESCRIZIONE>
          </VINCOLO>
          <VINCOLO>
            <VALORE>GELATERIA</VALORE>
            <DESCRIZIONE>GELATERIA</DESCRIZIONE>
          </VINCOLO>
          <VINCOLO>
            <VALORE>CATERING</VALORE>
            <DESCRIZIONE>CATERING</DESCRIZIONE>
          </VINCOLO>
          <VINCOLO>
            <VALORE>ALTRO</VALORE>
            <DESCRIZIONE>ALTRO</DESCRIZIONE>
          </VINCOLO>
        </VINCOLI>
        <DEFAULT></DEFAULT>
        <NASCOSTO></NASCOSTO>
        <OBBLIGATORIOSEVUOTO/>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
      <CAMPO>
        <OBBLIGATORIO>SI</OBBLIGATORIO>
        <CODICE>Descrizione</CODICE>
        <DESCRIZIONE>Ragione Sociale</DESCRIZIONE>
        <TIPO>TESTO</TIPO>
        <VINCOLI/>
        <DEFAULT></DEFAULT>
        <NASCOSTO></NASCOSTO>
        <OBBLIGATORIOSEVUOTO/>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
      <CAMPO>
        <OBBLIGATORIO>NO</OBBLIGATORIO>
        <CODICE>PartitaIVA</CODICE>
        <DESCRIZIONE>Partita Iva</DESCRIZIONE>
        <TIPO>PARTITAIVA</TIPO>
        <VINCOLI/>
        <DEFAULT></DEFAULT>
        <NASCOSTO></NASCOSTO>
        <OBBLIGATORIOSEVUOTO>CodiceFiscale</OBBLIGATORIOSEVUOTO>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
      <CAMPO>
        <OBBLIGATORIO>NO</OBBLIGATORIO>
        <CODICE>CodiceFiscale</CODICE>
        <DESCRIZIONE>Codice Fiscale</DESCRIZIONE>
        <TIPO>CODICEFISCALE</TIPO>
        <VINCOLI/>
        <DEFAULT></DEFAULT>
        <NASCOSTO></NASCOSTO>
        <OBBLIGATORIOSEVUOTO>PartitaIva</OBBLIGATORIOSEVUOTO>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
      <CAMPO>
        <OBBLIGATORIO>SI</OBBLIGATORIO>
        <CODICE>Indirizzo</CODICE>
        <DESCRIZIONE>Indirizzo</DESCRIZIONE>
        <TIPO>TESTO</TIPO>
        <VINCOLI/>
        <DEFAULT></DEFAULT>
        <NASCOSTO></NASCOSTO>
        <OBBLIGATORIOSEVUOTO/>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
      <CAMPO>
        <OBBLIGATORIO>SI</OBBLIGATORIO>
        <CODICE>Cap</CODICE>
        <DESCRIZIONE>Cap</DESCRIZIONE>
        <TIPO>TESTO</TIPO>
        <VINCOLI/>
        <DEFAULT></DEFAULT>
        <NASCOSTO></NASCOSTO>
        <OBBLIGATORIOSEVUOTO/>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
      <CAMPO>
        <OBBLIGATORIO>SI</OBBLIGATORIO>
        <CODICE>Localita</CODICE>
        <DESCRIZIONE>Localita</DESCRIZIONE>
        <TIPO>TESTO</TIPO>
        <VINCOLI/>
        <DEFAULT></DEFAULT>
        <NASCOSTO></NASCOSTO>
        <OBBLIGATORIOSEVUOTO/>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
      <CAMPO>
        <OBBLIGATORIO>SI</OBBLIGATORIO>
        <CODICE>Provincia</CODICE>
        <DESCRIZIONE>Provincia</DESCRIZIONE>
        <TIPO>TESTO</TIPO>
        <VINCOLI/>
        <DEFAULT></DEFAULT>
        <NASCOSTO></NASCOSTO>
        <OBBLIGATORIOSEVUOTO/>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
      <CAMPO>
        <OBBLIGATORIO>NO</OBBLIGATORIO>
        <CODICE>_Frazione</CODICE>
        <DESCRIZIONE>Frazione</DESCRIZIONE>
        <TIPO>TESTO</TIPO>
        <VINCOLI/>
        <DEFAULT></DEFAULT>
        <NASCOSTO></NASCOSTO>
        <OBBLIGATORIOSEVUOTO/>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
      <CAMPO>
        <OBBLIGATORIO>SI</OBBLIGATORIO>
        <CODICE>Telefono</CODICE>
        <DESCRIZIONE>Telefono</DESCRIZIONE>
        <TIPO>TESTO</TIPO>
        <VINCOLI/>
        <DEFAULT></DEFAULT>
        <NASCOSTO></NASCOSTO>
        <OBBLIGATORIOSEVUOTO/>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
      <CAMPO>
        <OBBLIGATORIO>NO</OBBLIGATORIO>
        <CODICE>Fax</CODICE>
        <DESCRIZIONE>Fax</DESCRIZIONE>
        <TIPO>TESTO</TIPO>
        <VINCOLI/>
        <DEFAULT></DEFAULT>
        <NASCOSTO></NASCOSTO>
        <OBBLIGATORIOSEVUOTO/>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
      <CAMPO>
        <OBBLIGATORIO>SI</OBBLIGATORIO>
        <CODICE>DocumentoAbituale</CODICE>
        <DESCRIZIONE>Documento Abituale</DESCRIZIONE>
        <TIPO>TESTO</TIPO>
        <VINCOLI/>
        <DEFAULT>BO</DEFAULT>
        <NASCOSTO>SI</NASCOSTO>
        <OBBLIGATORIOSEVUOTO/>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
      <CAMPO>
        <OBBLIGATORIO>SI</OBBLIGATORIO>
        <CODICE>Email</CODICE>
        <DESCRIZIONE>e-mail</DESCRIZIONE>
        <TIPO>TESTO</TIPO>
        <VINCOLI/>
        <DEFAULT></DEFAULT>
        <NASCOSTO></NASCOSTO>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
      <CAMPO>
        <OBBLIGATORIO>NO</OBBLIGATORIO>
        <CODICE>_Email_Pec</CODICE>
        <DESCRIZIONE>e-mail pec</DESCRIZIONE>
        <TIPO>TESTO</TIPO>
        <VINCOLI/>
        <DEFAULT></DEFAULT>
        <NASCOSTO></NASCOSTO>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
      <CAMPO>
        <OBBLIGATORIO>NO</OBBLIGATORIO>
        <CODICE>StatoCF</CODICE>
        <DESCRIZIONE>Cliente Bloccato</DESCRIZIONE>
        <TIPO>TESTO</TIPO>
        <VINCOLI/>
        <DEFAULT>B</DEFAULT>
        <NASCOSTO>SI</NASCOSTO>
        <OBBLIGATORIOSEVUOTO/>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
    </DEFINIZIONE>
  </ANAG>
  <ANAG>
    <INTESTAZIONE>NO</INTESTAZIONE>
    <OBBLIGATORIA>NO</OBBLIGATORIA>
    <DEFINIZIONE>
      <CAMPO>
        <OBBLIGATORIO>SI</OBBLIGATORIO>
        <CODICE>Descrizione</CODICE>
        <DESCRIZIONE>Insegna</DESCRIZIONE>
        <TIPO>TESTO</TIPO>
        <VINCOLI/>
        <DEFAULT></DEFAULT>
        <NASCOSTO></NASCOSTO>
        <OBBLIGATORIOSEVUOTO/>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
      <CAMPO>
        <OBBLIGATORIO>NO</OBBLIGATORIO>
        <CODICE>Indirizzo</CODICE>
        <DESCRIZIONE>Indirizzo</DESCRIZIONE>
        <TIPO>TESTO</TIPO>
        <VINCOLI/>
        <DEFAULT></DEFAULT>
        <NASCOSTO></NASCOSTO>
        <OBBLIGATORIOSEVUOTO/>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
      <CAMPO>
        <OBBLIGATORIO>NO</OBBLIGATORIO>
        <CODICE>Cap</CODICE>
        <DESCRIZIONE>Cap</DESCRIZIONE>
        <TIPO>TESTO</TIPO>
        <VINCOLI/>
        <DEFAULT></DEFAULT>
        <NASCOSTO></NASCOSTO>
        <OBBLIGATORIOSEVUOTO/>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
      <CAMPO>
        <OBBLIGATORIO>NO</OBBLIGATORIO>
        <CODICE>Localita</CODICE>
        <DESCRIZIONE>Localita</DESCRIZIONE>
        <TIPO>TESTO</TIPO>
        <VINCOLI/>
        <DEFAULT></DEFAULT>
        <NASCOSTO></NASCOSTO>
        <OBBLIGATORIOSEVUOTO/>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
      <CAMPO>
        <OBBLIGATORIO>NO</OBBLIGATORIO>
        <CODICE>Provincia</CODICE>
        <DESCRIZIONE>Provincia</DESCRIZIONE>
        <TIPO>TESTO</TIPO>
        <VINCOLI/>
        <DEFAULT></DEFAULT>
        <NASCOSTO></NASCOSTO>
        <OBBLIGATORIOSEVUOTO/>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
      <CAMPO>
        <OBBLIGATORIO>NO</OBBLIGATORIO>
        <CODICE>_Frazione</CODICE>
        <DESCRIZIONE>Frazione</DESCRIZIONE>
        <TIPO>TESTO</TIPO>
        <VINCOLI/>
        <DEFAULT></DEFAULT>
        <NASCOSTO></NASCOSTO>
        <OBBLIGATORIOSEVUOTO/>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
      <CAMPO>
        <OBBLIGATORIO>NO</OBBLIGATORIO>
        <CODICE>_GiorniChiusura</CODICE>
        <DESCRIZIONE>Giorni Chiusura</DESCRIZIONE>
        <TIPO>TESTO</TIPO>
        <VINCOLI/>
        <DEFAULT></DEFAULT>
        <NASCOSTO></NASCOSTO>
        <OBBLIGATORIOSEVUOTO/>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
      <CAMPO>
        <OBBLIGATORIO>NO</OBBLIGATORIO>
        <CODICE>_GiorniVisita</CODICE>
        <DESCRIZIONE>Giorni Visita Agente</DESCRIZIONE>
        <TIPO>TESTO</TIPO>
        <VINCOLI/>
        <DEFAULT></DEFAULT>
        <NASCOSTO></NASCOSTO>
        <OBBLIGATORIOSEVUOTO/>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
      <CAMPO>
        <OBBLIGATORIO>NO</OBBLIGATORIO>
        <CODICE>_GiorniConsegna</CODICE>
        <DESCRIZIONE>Giorni Consegna</DESCRIZIONE>
        <TIPO>TESTO</TIPO>
        <VINCOLI/>
        <DEFAULT></DEFAULT>
        <NASCOSTO></NASCOSTO>
        <OBBLIGATORIOSEVUOTO/>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
      <CAMPO>
        <OBBLIGATORIO>NO</OBBLIGATORIO>
        <CODICE>_ResponsabileAcquisti</CODICE>
        <DESCRIZIONE>Responsabile Acquisti</DESCRIZIONE>
        <TIPO>TESTO</TIPO>
        <VINCOLI/>
        <DEFAULT></DEFAULT>
        <NASCOSTO></NASCOSTO>
        <OBBLIGATORIOSEVUOTO/>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
      <CAMPO>
        <OBBLIGATORIO>NO</OBBLIGATORIO>
        <CODICE>_IBAN</CODICE>
        <DESCRIZIONE>Iban</DESCRIZIONE>
        <TIPO>TESTO</TIPO>
        <VINCOLI/>
        <DEFAULT></DEFAULT>
        <NASCOSTO></NASCOSTO>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
      <CAMPO>
        <OBBLIGATORIO>NO</OBBLIGATORIO>
        <CODICE>_RicevutaBancaria</CODICE>
        <DESCRIZIONE>Ricevuta Bancaria</DESCRIZIONE>
        <TIPO>CHECK</TIPO>
        <VINCOLI/>
        <DEFAULT></DEFAULT>
        <NASCOSTO></NASCOSTO>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
      <CAMPO>
        <OBBLIGATORIO>NO</OBBLIGATORIO>
        <CODICE>_Pagamento</CODICE>
        <DESCRIZIONE>Pagamento</DESCRIZIONE>
        <TIPO>TESTO</TIPO>
        <VINCOLI>
          <VINCOLO>
            <VALORE>CONSEGNA</VALORE>
            <DESCRIZIONE>CONSEGNA</DESCRIZIONE>
          </VINCOLO>
          <VINCOLO>
            <VALORE>VISTA</VALORE>
            <DESCRIZIONE>VISTA FATTURA</DESCRIZIONE>
          </VINCOLO>
        </VINCOLI>
        <DEFAULT></DEFAULT>
        <NASCOSTO></NASCOSTO>
        <OBBLIGATORIOSEVUOTO/>
        <UNIVOCO>NO</UNIVOCO>
      </CAMPO>
    </DEFINIZIONE>
  </ANAG>
</ANAGRAFE_CUSTOM>

Inserimento e Modifica cliente in Zippy Infinity

Se esiste una configurazione per l’inserimento di un nuovo cliente nel menù di vendita di Zippy Infinity apparirà la voce “Nuovo Cliente”.

 

 

 

 

 

 

Se la configurazione inserita permette la modifica dei clienti esistenti nel menù del cliente di Zippy Infinity apparirà la voce “Modifica Cliente”.

Documentazione Zippy Infinity