Skip to content

PHP SDK for connecting with Acrosure Insurance Gateway

License

Notifications You must be signed in to change notification settings

Acrosure/acrosure-php-sdk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

acrosure-php-sdk

Acrosure

PHP SDK for connecting with Acrosure Insurance Gateway

Installation

Install via Composer:

composer require acrosure/acrosure-php-sdk

Getting Started

Import AcrosureClient into your project.

require_once dirname(__FILE__).'/vendor/autoload.php';

Instantiate with an API key from Acrosure Dashboard.

$acrosureClient = new AcrosureClient([
  "token" => "<your_api_key>",
  "endpointBase" => "<endpoint_base>" // as optional
]);

Basic Usage

AcrosureClient provides several objects such as application, product, etc. and associated APIs.

Any data will be inside an response object with data key, along with meta data, such as:

{
  "data": { ... },
  "status": "ok",
  ...
}

Application

Get

Get application with specified id.

$application = $acrosureClient->getApplicationManager()->get("<application_id>");

Create

Create an application.

$createdApplication = $acrosureClient->getApplicationManager()->create([
  "product_id" => "<product_id>", // required
  "basic_data" => json_decode('{}'),
  "package_options" => json_decode('{}'),
  "additional_data" => json_decode('{}'),
  "package_code" => "<package_code>",
  "attachments": => []
]);

Update

Update an application.

$updatedApplication = $acrosureClient->getApplicationManager()->update([
  "application_id" => "<application_id>", // required
  "basic_data": json_decode('{}'),
  "package_options": json_decode('{}'),
  "additional_data": json_decode('{}'),
  "package_code": "<package_code>",
  "attachments": []
]);

Get packages

Get current application available packages.

$packages = $acrosureClient->getApplicationManager()->getPackages("<application_id>");

Select package

Select package for current application.

$updatedApplication = $acrosureClient->getApplicationManager()->selectPackage([
  "application_id" => "<application_id>",
  "package_code" => "<package_code>"
]);

Get package

Get selected package of current application.

$currentPackage = $acrosureClient->getApplicationManager()->getPackage(
  "<application_id>"
);

Submit

Submit current application.

$submittedApplication = $acrosureClient->getApplicationManager()->submit(
  "<application_id>"
);

Confirm

Confirm current application.

$confirmedApplication = $acrosureClient->getApplicationManager()->confirm(
  "<application_id>"
);

List

List your applications (with or without query).

$applications = $acrosureClient->getApplicationManager()->getList(searchParams);

Product

Get

Get product with specified id.

$product = $acrosureClient->getProductManager()->get("<product_id>");

List

List your products (with or without query).

$products = $acrosureClient->getProductManager()->getList(searchParams);

Policy

Get

Get policy with specified id.

$policy = $acrosureClient->getPolicyManager()->get("<policy_id>");

List

List your policies (with or without query).

$policies = $acrosureClient->getPolicyManager()->getList(searchParams);

Data

Get

Get values for a handler (with or without dependencies, please refer to Acrosure API Document).

// Without dependencies
$values = $acrosureClient->getDataManager()->get([
  "handler" => "<some_handler>"
]);

// With dependencies
$values = $acrosureClient->getDataManager()->get([
  "handler" => "<some_handler>",
  "dependencies" => ["<dependency_1>", "<dependency_2>"]
]);

Team

Get info

Get current team information.

$teamInfo = $acrosureClient->getTeamManager()->getInfo();

Other functionality

Verify webhook signature

Verify webhook signature by specify signature and raw data string. (Only Node.js environment)

$isSignatureValid = $acrosureClient->verifySignature(
  "<signature>",
  "<raw_data>"
);

Associated Acrosure API endpoints

Application

/applications/get
/applications/list
/applications/create
/applications/update
/applications/get-packages
/applications/get-package
/applications/select-package
/applications/submit
/applications/confirm
/applications/get-hash

Product

/products/get
/products/list

Policy

/policies/get
/policies/list

Data

/data/get

Team

/teams/get-info