HomeDocumentationTutorialsCreating my first adapter

Creating my first adapter

Creating an Adapter for External Service Integration

Adapters are essential components in integration frameworks, acting as interfaces to process service calls to external gateways or web service servers. This tutorial will guide you through the file structure and implementation of an adapter using Web Service calls (SOAP/RESTful) to interact with external services. The external party's API documentation is required for this process.

 

Project Directory Structure

A well-organized file structure is crucial for maintaining clarity and efficiency. Here's a suggested directory structure for an adapter project:

NOTE: in this exampl,e we are using external-partner as our company service

INFO
adapters
----external-partner
----------------external-partner.interface.php

Creating the Configuration Class

The configuration class sets up necessary configurations required for the adapter. Here is an example of an adapter:

PHP
/**
 *  interface
 * 
 * @owner 
 * @api reference http://urltoanapidocumentation
 */
class ExternalPartnerProvider{
    final public function verifyNAtioanId($taxpayer_profile){
 $accessToken = 'ACCESS000TOKEN';
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
//curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_INFILESIZE, null);
curl_setopt($ch, CURLOPT_POSTFIELDS, $taxpager_profile);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Access-Token: $accessToken",
'Content-Type: application/json',
'Content-Length: ' . strlen($taxpager_profile),
]);
       $result = curl_exec($ch);
       
        if ($result === false) {
            return 'cURL error:' . curl_error($ch) . PHP_EOL;
        } else {
            $mixedInterfaceResultSet = strval($result) . PHP_EOL;
        }
 
        curl_close($ch);
       return $mixedInterfaceResultSet;
 
    }
}

 

Conclusion

This tutorial provides a basic structure and implementation guide for creating an adapter to process service calls to an external gateway or web service server. Be sure to replace placeholders with actual values from the external party's API documentation. Feel free to expand this structure based on your specific requirements.