Ticket

Web client integration can be done via GTM Tag or by adding inline JavaScript.

API Base URL

Testing:

https://winfluenced-pixel-rvlaoxgvjq-ey.a.run.app

Test Api Swagger Url:

https://winfluenced-pixel-rvlaoxgvjq-ey.a.run.app/swagger/index.html

Sample Client script

/* Datalayer Start */
const data_layer = {
    customer_no: {{GTM Variable - Customer No}},
    pnr: {{GTM Variable - PNR Number }},
    ticket_no: {{GTM Variable - Ticket Number }},
    origin_destination: {{GTM Variable - Origin Destination }},
    ticket_items: {{GTM Variable -  Ticket Items }}
    total_discount: {{GTM Variable - Ticket Total Discount}},
    shipping_amount: {{GTM Variable -  Shipping Amount}},
    total_tax: {{GTM Variable - Ticket Total Tax}},
    total_amount: {{GTM Variable - Ticket Total Amount}},
    payment_currency: {{GTM Variable - Ticket Payment Currency Code}},
    affiliate_currency: {{GTM Variable - Ticket Affiliate Currency Code}},
    voucher_code: {{GTM Variable -  Voucher / Coupon Code}},
    user_type: {{GTM Variable - Customer / User Type}},
    sales_channel: {{GTM Variable - Sales Channel}}
};
/* Datalayer End */

(function sendConversion() {
    function getAdpCookieValue(cookieName, i) {
        const cookieValue = document.cookie.match(`(^|;)\\s*${cookieName}\\s*=\\s*([^;]+)`);
        var values = (cookieValue ? cookieValue.pop() : '').split('_');
        return (values.length >= i) ? values[i] : '';
    }

    const conversion_data = {
        "transactionId": getAdpCookieValue("_adp", 0), // ClickID reads from _adp cookie
        "offerId": getAdpCookieValue("_adp", 1),  // OfferID reads from _adp cookie
        "advertiserId": "000", // Replace with the brand Advertiser ID provided by Adpartners
        "goalName": null, // Replace with the brand Goal ID provided by Adpartners
        "customerNo": data_layer.customer_no,
        "pnr": data_layer.pnr,
        "ticketNo": data_layer.ticket_no,
        "originDestination": data_layer.origin_destination,
        "ticketItems": [],
        "totalDiscount": data_layer.total_discount,
        "totalShippingAmount": data_layer.shipping_amount,
        "totalTax": data_layer.total_tax,
        "totalAmount": data_layer.total_amount,
        "paymentCurrencyCode": data_layer.paymnet_currency,
        "affiliateCurrencyCode": data_layer.affiliate_currency,
        "voucherCode": data_layer.voucher_code,
        "userType": data_layer.user_type,
        "salesChannel": data_layer.sales_channel
    }
    for (i = 0; i < data_layer.ticket_items.length; i++) {
        conversion_data.ticketItems.push({
            "productId": data_layer.ticket_items[i].id,
            "fullRoute": data_layer.ticket_items[i].fullRoute,
            "cabinClass": data_layer.ticket_items[i].cabinClass,
            "fareFamily": data_layer.ticket_items[i].fareFamily,
            "firstFlightDate": data_layer.ticket_items[i].firstFlightDate,
            "routeType": data_layer.ticket_items[i].routeType,
            "tripType": data_layer.ticket_items[i].tripType,
            "companyName": data_layer.ticket_items[i].companyName,
            "quantity": data_layer.ticket_items[i].quantity,
            "unitePrice": data_layer.ticket_items[i].unitePrice,
            "uniteDiscount": data_layer.ticket_items[i].uniteDiscount
        });
    }

    fetch('{API Base URL}/api/pixel/ticket', {
        method: "POST",
        body: JSON.stringify(conversion_data),
        headers: {
            "Content-Type": "application/json"
        },
    });

})();
circle-info

Conversion Endpoint: Conversion pixel will send a post request with conversion data the following API method. You may find the schema and field properties bellow.

Create Conversion API Action

Conversion tracking for ticket transactions.

post
Body
transactionIdstring · nullableOptional

Click - Transaction Id

advertiserIdstring · nullableOptional

Advertiser Adpartners ID

offerIdstring · nullableOptional

Offer id, (Optional)

goalNamestring · nullableOptional

Category base, commission goal name, (Optional)

customerNostring · nullableOptional

Member/Customer/User number (Optional)

pnrstring · nullableOptional

Flight PNR number

ticketNostring · nullableOptional

Flight Ticket number

originDestinationstring · nullableOptional

PNR Main Origin and Destination {SAW-ESB}

totalDiscountnumber · float · nullableOptional

Ticket total discount

totalShippingAmountnumber · float · nullableOptional

Ticket total shipping amount

totalTaxnumber · float · nullableOptional

Ticket total tax

totalAmountnumber · float · nullableOptional

Revenue Ticket total amount, (include tax shipping and discounts)

paymentCurrencyCodestring · nullableOptional

Ticket Currency TRY,USD,EUR ...

originCurrencyCodestring · nullableOptional

Original Ticket Currency TRY,USD,EUR ...

affiliateCurrencyCodestring · nullableOptional

Affiliate Revenue Currency TRY,USD,EUR ...

voucherCodestring · nullableOptional

Ticket coupon code

userTypestring · nullableOptional

New or existing user

salesChannelstring · nullableOptional

Sales channel; web, ios and android

Responses
chevron-right
200

Success

No content

post
/api/pixel/ticket
200

Success

No content

Last updated