Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Für die Konfiguration der Coupa-Anbindung muss zunächst ein Shared Secret in der Coupa-Instanz angelegt werden. Anschließend stehen die folgenden Einstellungen in der Modulkonfiguration der PRINT LOUNGE zur Verfügung:

EinstellungBeschreibung
Hostname des COUPA-SystemsHier muss die externe URL der Coupa-Instanz hinterlegt werden, um bspw. einen Rücksprung in das externe System nach Bestellabschluss zu ermöglichen.
Shared Secret

Der in der Coupa-Instanz erzeugte Shared Secret muss hier hinterlegt werden, um den Zugriff sicher zu authentifizieren.

Hinweis: Diese Einstellung wird in der Datenbank verschlüsselt abgespeichert und wird bei der Verwendung wieder entschlüsselt.

PunchOutOrderMessage-Template

Das PunchOutOrderMessage-Template (POOM) wird nach Bestellabschluss an die Coupa-Instanz übermittelt und sollte alle Informationen zu dem Warenkorb enthalten. 

Dieses Template kann mithilfe von Smarty dynamisch konfiguriert werden, wobei verschiedene Variablen mit Informationen zu der Bestellung zur Verfügung stehen.

Code Block
languagephp
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE cXML SYSTEM "http://xml.cxml.org/schemas/cXML/1.2.014/cXML.dtd">
<cXML payloadID="{$punchOutSetupRequest->payloadId}" xml:lang="{$punchOutSetupRequest->language}" timestamp="{$punchOutSetupRequest->timestamp->format('c')}" version="1.2.0.14">
    <Header>
        <From>
            <Credential domain="{$punchOutSetupRequest->fromCredential->domain}">
                <Identity>{$punchOutSetupRequest->fromCredential->identity}</Identity>
            </Credential>
        </From>
        <To>
            <Credential domain="{$punchOutSetupRequest->toCredential->domain}">
                <Identity>{$punchOutSetupRequest->toCredential->identity}</Identity>
            </Credential>
        </To>
        <Sender>
            <Credential domain="{$punchOutSetupRequest->senderCredential->domain}">
                <Identity>{$punchOutSetupRequest->senderCredential->identity}</Identity>
            </Credential>
            <UserAgent/>
        </Sender>
    </Header>
    <Message deploymentMode="production">
        <PunchOutOrderMessage>
            <BuyerCookie>{$punchOutSetupRequest->requestBody->buyerCookie}</BuyerCookie>
            <PunchOutOrderMessageHeader operationAllowed="edit" quoteStatus="final">
                <Total>
                    <Money currency="{$order->total->getCurrency()}">{($order->totalWithVat)|number_format:2:'.':''}</Money>
                </Total>
                <Shipping>
                    <Money currency="{$order->shipping->shippingCost->getCurrency()}">{($order->shipping->shippingCost->getAmount()/100)|number_format:2:'.':''}</Money>
                </Shipping>
                <Tax>
                    <Money currency="{$order->total->getCurrency()}">{($order->vat)|number_format:2:'.':''}</Money>
                </Tax>
            </PunchOutOrderMessageHeader>
            {foreach from=$orderItems item=orderItem} 
            <ItemIn quantity="{$orderItem->quantityValue}">
                <ItemID>
                    <SupplierPartID>{$orderItem->id}</SupplierPartID>
                    <SupplierPartAuxiliaryID>{$order->id}</SupplierPartAuxiliaryID>
                </ItemID>
                <ItemDetail>
                    <UnitPrice>
                        <Money currency="{$orderItem->total->getCurrency()}">{($orderItem->total->getAmount()/100)|number_format:2:'.':''}</Money>
                    </UnitPrice>
                    <Description xml:lang="{$punchOutSetupRequest->language}">{$orderItem->name}</Description>
                </ItemDetail>
            </ItemIn>
            {/foreach} 
        </PunchOutOrderMessage>
    </Message>
</cXML>