---
title: >
  Don't use third-party services directly
pubDate: 2023-08-23
permalink: >-
  archive/2023/08/23/dont-use-third-party-services-directly
tags:
  - automated-testing
---

If you need to integrate your application with a third-party service, don't integrate it directly - even if it has an SDK.

Doing so locks you into a single implementation and a single vendor.

If you write your own integration layer, it's possible to add multiple implementations, such as different payment gateways, that conform with a single interface.

If you need to switch to a different provider or add multiple options, you can without changing the existing code.

It also makes it easier to test as you can write a fake implementation and use it for testing.