PHP SDK for connecting with Acrosure Insurance Gateway
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
examples
lib
tests
.gitignore
LICENSE
README.md
composer.json
composer.lock
phpunit.xml

README.md

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