Fidel API release notes
Fidel API release notes
fidel.uk

🖥The Fidel Dashboard has a new way to add brands! 🖼

You can now search Fidel’s existing database of Brands when adding Brands to your Program on the Fidel Dashboard. If your desired Brand is not on our list, you can create a new one. We're hard at work on making it easier to onboard new Brands and Locations - this is just the first step. Stay tuned!

a-new-way-brands.2021-04-01 17_05_27.gif

📲The mobile Fidel SDKs now support the allowedCountries config option🎏

android-sdk v1.5.1

  • if available, the LinkResult object now includes the firstNumbers field. It respects your account security settings, and might return "******" if you've chosen to hide the first six digits of your registered cards.

android-sdk v1.5.0

  • added a new allowedCountries property. It expects an array of countries allowed in the drop-down selector.
  • removed the country property. To set a single default country and not allow the user to select the country from a drop-down, set a single country in the new allowedCountries property array.

ios-sdk v1.8.4

  • if available, the LinkResult object now includes the firstNumbers field. It respects your account security settings, and might return "******" if you've chosen to hide the first six digits of your registered cards.

ios-sdk v1.8.3

  • compiled the SDK for Swift v5.3.1.
  • added a new allowedCountries property. It expects an array of countries allowed in the drop-down selector. If your project is an Objective-C project, use the objc_allowedCountries property.
  • removed the country property. To set a single default country and not allow the user to select the country from a drop-down, set a single country in the new allowedCountries property array.
  • removed the .noDefault option from the Country enum.

fidel-react-native v1.4.0

  • added a new allowedCountries property. It expects an array of countries allowed in the drop-down selector.
  • removed the country property. To set a single default country and not allow the user to select the country from a drop-down, set a single country in the new allowedCountries property array.
  • if available, the card-linking result object now includes the firstNumbers field. It respects your account security settings, and might return "******" if you've chosen to hide the first six digits of your registered cards.

cordova-plugin-fidel v1.2.0

  • added a new allowedCountries property. It expects an array of countries allowed in the drop-down selector.
  • removed the country property. To set a single default country and not allow the user to select the country from a drop-down, set a single country in the new allowedCountries property array.
  • if available, the card-linking result object now includes the firstNumbers field. It respects your account security settings, and might return "******" if you've chosen to hide the first six digits of your registered cards.

📢We've added support for Amex Approval Codes📧

We've added support for Amex Approval Codes to our transactions. When you receive a transaction on a webhook, or when you GET a transaction via the API, you will now have an amexApprovalCode property on the transaction identifiers object.

    "identifiers": {
        "amexApprovalCode": "123456",
        "mastercardAuthCode": null,
        "mastercardRefNumber": null,
        "mastercardTransactionSequenceNumber": null,
        "MID": "123456789",
        "visaAuthCode": null
    }

📢Amex is now enabled by default in the US🇺🇸

🎉With the addition of Amex enabled by default for new US accounts, all new accounts should now have Amex enabled by default for every location!🎊

You can try this out by logging into your account on the new Fidel Dashboard and create a test location in one of your test programs!

Screenshot 2020-12-03 at 13.52.55.png

📢We've added the ability to sync a program via the API🛠

You can now start the Location sync process programmatically by calling the Update Program endpoint of our API.

You'll need to add a body parameter of { "status" : "syncing" } to start the process. Because syncing only works for live programs, you'll need to use the programId of a live program, and your live API key, when you call the API endpoint.|

curl -X PATCH https://api.fidel.uk/v1/programs/1ed2d0a4-b778-4ea4-b991-b5ede2d4eeaa \
  -H 'content-type: application/json' \
  -H 'fidel-key: sk_live_b2e6a6ab-1a11-47ec-831c-81c2b23fd5b2' \
  -d '{
    "status": "syncing"
  }'

🧪We've added demo data to new test accounts👤

Creating your first test Transaction in the Fidel Dashboard just became easier. All new Fidel accounts now come with all the test data setup you need to create a transaction:

  • A "Demo Program"
  • A "Simple Coffee" Brand
  • 3 UK Locations
  • 1 Visa Card registered
  • 1 Auth Transaction

The "Demo Program" also comes with the new Program properties we added:

  • icon - Emoji to associate with the Program. Uses the :emoji-name: format. Accepts between 4 and 200 characters. The demo data is :wave: 👋.
  • iconBackground - Background color for the program icon. Accepts a HEX CSS string, like #333333. The demo data is #fedcd7.

📢 We’ve added a new webhook event, for location sync statuses 🛍

A location.status event is triggered when there are updates from a card network for a Location in a Program.

In the test environment, this webhook triggers three times for each location upon creating a Location, once for each card scheme, with a location.active event.

In the live environment, this would trigger whenever a location has synced successfully for a card scheme, with a location.active event. Or whenever a location has failed to sync for a card scheme, with a location.failed event.

You can use the Fidel Dashboard or the Webhooks API to register your webhook URL with the new location.status event.

curl -X POST \
  https://api.fidel.uk/v1/programs/06471dbe-a3c7-429e-8a18-16dc97e5cf35/hooks \
  -H 'content-type: application/json' \
  -H 'fidel-key: sk_test_50ea90b6-2a3b-4a56-814d-1bc592ba4d63' \
  -d '{
    "event": "location.status",
    "url": "https://example.com/location-webhook"
  }'

Screenshot 2020-08-18 at 15.27.59.png

To read more about the new location.status webhook event, visit our documentation!

🔗Added endpoints for retrieving and checking cards exist on offers with activation🗂

We've added two new endpoints to our Offers API for retrieving and checking cards exist on offers with activation:

  • /v1/offers/{offerId}/cards/ - Get a list of cards associated with an offer with activation. You can read more about it in the API Reference.
curl -X GET \
  https://api.fidel.uk/v1/offers/0b31ee54-1def-4b46-afca-151f2ed1bce2/cards \
  -H 'Content-Type: application/json' \
  -H 'Fidel-Key: sk_test_50ea90b6-2a3b-4a56-814d-1bc592ba4d63'
  • /v1/offers/{offerId}/cards/{cardId} - Check if a specific card is associated with an offer with activation. You can read more about it in the API Reference.
curl -X GET \
  https://api.fidel.uk/v1/offers/0b31ee54-1def-4b46-afca-151f2ed1bce2/cards/aef3e34e-725f-470a-899a-740ebe4aae5e \
  -H 'content-type: application/json' \
  -H 'fidel-key: sk_test_50ea90b6-2a3b-4a56-814d-1bc592ba4d63'

📱We've updated our Mobile SDKs to support l10n & i18n 🗺

Our Android, iOS and React Native SDKs all got updated to support:

  • localization for French and Swedish.
  • Terms and Conditions update according to the card scheme name (Visa, MasterCard, or Amex).
  • options for programName and termsConditionsUrl. They are mandatory when country is USA or Canada.
  • internationalized Terms and Conditions for the USA, Canada, and the rest of the world.

USA & Canada New T&C: By submitting your card information and checking this box, you authorize {cardScheme} to monitor and share transaction data with Fidel (our service provider) to participate in the {programName} programme. You also acknowledge and agree that Fidel may share certain details of your qualifying transactions with {companyName} to enable your participation in the {programName} programme and for other purposes in accordance with the {companyName} Terms and Conditions, {companyName} privacy policy and Fidel’s Privacy Policy. You may opt-out of transaction monitoring on the linked card at any time by contacting support.

Rest of the World T&C: I authorise {cardScheme} to monitor my payment card to identify transactions that qualify for a reward and for {cardScheme} to share such information with {companyName}, to enable my card-linked offers and target offers that may be of interest to me. For information about {companyName} privacy practices, please see the privacy policy. You may opt-out of transaction monitoring on the payment card you entered at any time by contacting support.

📢 We’ve added a new webhook event, for refunded transactions 💸

A transaction.refund or refund transaction event is triggered when a transaction is refunded. A refunded transaction also triggers a cleared event, with the auth property set to false. The amount on both events is negative.

The Fidel API tries to identify the initial transaction for which the refund was issued, using cardId, locationId, merchantId, amount and datetime. If we can identify an associated initial transaction, the webhook data contains the originalTransactionId. If we can’t identify the initial transaction, the data comes in on both webhooks with a negative amount but no originalTransactionId property.

You can use the Fidel Dashboard or the Webhooks API to register your webhook URL with the new transaction.refund event.

curl -X POST \
  https://api.fidel.uk/v1/programs/06471dbe-a3c7-429e-8a18-16dc97e5cf35/hooks \
  -H 'content-type: application/json' \
  -H 'fidel-key: sk_test_50ea90b6-2a3b-4a56-814d-1bc592ba4d63' \
  -d '{
    "event": "transaction.refund",
    "url": "https://example.com/refund-webhook"
  }'

Screenshot 2020-07-13 at 12.01.19.png

To read more about the new transaction.refund webhook event, visit our documentation!