Skip to main content

Garage loyalty cards in Apple Wallet and Google Wallet

In automotive, you engage two audiences. The trade customer (mechanic, body shop) wants a points program on parts orders. The private customer wants a nudge when the car is due for a service or a tyre change. eldo wallet handles both from the same wallet, with an Apple Wallet or Google Wallet card that shows the plate number and the next due date.

Try this pass liveFill in the form, watch the pass and the code update, then get it on your phone.

Customer journey​

Integration workflow​

  1. Set up the cardBack office

    Pick MEMBER_CARD, the POINTS gain unit and the displayed fields: the right-hand field can show the plate number (N_IMMATRICULATION), the left-hand one the gain.

    PATCH/store-cardsTry it
    curl -L -X PATCH 'https://api-v2.test.eldowallet.fr/store-cards' \
    -H 'Accept: application/json' \
    -H 'x-lang: en' \
    -H 'Authorization: Bearer <token>' \
    -F 'cardType="MEMBER_CARD"' \
    -F 'programName="Garage Central Club"' \
    -F 'gainUnit="POINTS"' \
    -F 'gainLabel="POINTS"' \
    -F 'startRow="GAIN"' \
    -F 'endRow="N_IMMATRICULATION"' \
    -F 'colors="{\"backgroundColor\":\"\#263238\",\"labelColor\":\"\#9ee00d\",\"foregroundColor\":\"\#ffffff\"}"'
  2. Separate trade and private customersBack office

    Create one client type per audience: "Trade", "Private". You then target each audience separately. See Client types.

  3. Enroll the trade customerYour server

    The sales rep visits a garage. A button in your CRM creates the client with the "Trade" type and sendCard: true. The owner gets the card within 30 seconds. Same flow from your trade extranet.

    POST/clientsTry it
    curl -L 'https://api-v2.test.eldowallet.fr/clients' \
    -H 'Accept: application/json' \
    -H 'Content-Type: application/json' \
    -H 'x-lang: en' \
    -H 'Authorization: Bearer <token>' \
    --data-raw '{
    "firstName": "Karim",
    "lastName": "Haddad",
    "email": "karim@garage-haddad.example.com",
    "phoneNumber": "+33612345678",
    "companyName": "Garage Haddad",
    "clientType": "$TRADE_TYPE_ID",
    "source": "CRM",
    "sendCard": true
    }'
  4. Personalise the private customer's cardYour server

    Add the vehicle model, the next service date and a booking link to the back of the card (additionalInformations). A per-customer strip is possible too.

    PATCH/clients/{id}/specificTry it
    curl -L -X PATCH 'https://api-v2.test.eldowallet.fr/clients/$CLIENT_ID/specific' \
    -H 'Accept: application/json' \
    -H 'x-lang: en' \
    -H 'Authorization: Bearer <token>' \
    -F 'additionalInformations="[{\"title\":\"Vehicle\",\"value\":\"Peugeot 308, AB-123-CD\",\"kind\":\"TEXT\"},{\"title\":\"Next service\",\"value\":\"March 2027\",\"kind\":\"TEXT\"},{\"title\":\"Book a slot\",\"value\":\"https://garage-central.example.com/booking\",\"kind\":\"URL\"}]"'
  5. Credit points on every orderYour server

    Your ordering system sends the gain after each validated invoice. The balance updates on the trade customer's card.

  6. Launch the campaign of the monthBack office

    Brake campaign, new injector, winter tyres: create a communication with its visual and period. The cards' strip changes during the campaign. Target a points range (minPoints, maxPoints) to keep an offer for your best trade customers. Then notify the network.

  7. Send service remindersYour server

    Your workshop CRM detects vehicles due for service and sends a SPECIFIC notification with a personal message per customer: "Your service is coming up, book a slot."

  8. Reward and win backYour server

    2,000-point tier: reward coupon. No order in 60 days: win-back coupon. The coupon is redeemed at the counter.

  9. Measure the networkYour server

    Compare orders and average basket for card holders and non-holders in your ERP.

Best practices​

  • One wallet, two client types. Don't mix B2B and B2C messages: client types keep the two audiences apart.
  • The service reminder is your best message. It's useful, personal and expected: tag it INFORMATIVE. Keep promotions (COMMERCIAL) for trade customers.
  • One communication at a time. Two communications overlapping on the same period are rejected (OVERLAPPING_COMMUNICATIONS).
  • QR codes on catalogs. Print the back-office sign-up QR code on your catalogs and point-of-sale material. No development needed.

Go further​

Get inspired​

For trade customers and drivers alike, the Wallet card can follow the whole life of the vehicle. Here are ideas to go further.

Your car is readyAs soon as the work is done, the customer is notified: “Your car is ready, collect it before 6 pm.”
Roadworthiness test dueA month before the vehicle inspection is due, a reminder with a booking link.
First frostCold weather coming? An offer on winter tyres or a battery check, at the right time.
The car’s birthdayThree years after purchase, a free check-up. The customer comes back to your workshop rather than going elsewhere.
Welcome, proA new garage joins the programme: a welcome coupon on its first order arrives with its card.
Garage-to-garage referralA garage recommends a peer: both earn bonus points on the first order.
Network eveningYour best trade customers receive a personal invitation to your annual evening or trade show, scanned at the door.
Post-service reviewThe day after the service, a message invites the customer to rate it. Useful for each garage’s reputation.

Like one of these ideas? Contact our team and we'll show you how to set it up.

API news, once a month

New endpoints, upcoming changes, guides and use cases. No spam, one-click unsubscribe.

Report a technical problem

An API error, a pass that does not update, an email that does not arrive? Describe the problem: our technical team will answer.

For a fast answer, include:

  • The method and endpoint (e.g. POST /clients)
  • The error code returned (errorCode) and the body sent
  • The date and time of the call
  • The identifiers involved (customer, template, pass)

Never include an API token or a password.

AI assistant

Beta

Loading…

AI-generated answers (Claude): double-check important details.

Sign in to use the assistant