Skip to content
English
  • There are no suggestions because the search field is empty.

Pisano - SAP SuccessFactors Integration

This article explains how SAP SuccessFactors employee data can be used to initiate Pisano Employee Experience surveys through event-driven REST integration or scheduled CSV transfer. 

 

The appropriate integration approach depends on the survey timing, data volume, available employee fields, security requirements, and the customer’s existing integration platform.

What You Will Find Here

This article covers:

  • Integration Options
  • Platform Capabilities Used in the Integration
  • Event Driven REST Integration
  • Scheduled CSV and SFTP Integration
  • Field Mapping
  • Security, Monitoring, and Production Checks
  • Decisions Before Implementation
  • Acceptance Criteria

Integration Options

Two integration patterns can be used to transfer SAP SuccessFactors employee data to Pisano and initiate Employee Experience surveys.

Option Data Path Best Fit
Event Driven REST SuccessFactors → REST and JSON → Pisano Sharing API A selected employee event should trigger a survey at an agreed time.
Scheduled CSV and SFTP SuccessFactors → CSV → SFTP → Pisano Workflow Daily, weekly, or recurring Employee Experience audiences and batch programs.
Event Driven Integration Flow
An employee lifecycle event is published through SAP Intelligent Services and processed by SAP Integration Center. The resulting REST and JSON request is sent to the Pisano Sharing API, either directly when compatible or through the customer's integration platform. Pisano then initiates email or SMS delivery, or provides a personalised survey link.
Employee lifecycle event → SAP Intelligent Services → SAP Integration Center (REST / JSON) → Pisano Sharing API → Email / SMS / Personalised Survey Link

Scheduled Integration Flow
A scheduled SuccessFactors audience is exported by Integration Center as a CSV file and transferred to an SFTP destination. Pisano Workflow then processes the file and applies customer mapping, eligibility, and survey delivery rules.
Scheduled SuccessFactors audience → Integration Center creates CSV → SFTP destination → Pisano time based Workflow → Customer mapping / eligibility / survey delivery

Platform Capabilities Used in the Integration

SAP SuccessFactors

The integration can use the following SAP SuccessFactors capabilities:

  • Intelligent Services can publish employee lifecycle events and start an attached integration.
  • Integration Center can send REST output in JSON and enrich event data by reading additional SuccessFactors or OData fields.
  • Integration Center can run scheduled exports to SFTP in CSV format.
  • Execution Manager and event or integration logs provide operational monitoring.

Pisano

The integration can use the following Pisano capabilities:

  • Email Sharing API starts survey email delivery through the configured email provider.
  • SMS Sharing API starts survey SMS delivery through the configured SMS provider.
  • Link Sharing API creates one personalised survey link for a customer. The external system remains responsible for delivering that link.
  • Time based Workflow can read a configured file source and process customer or audience data for survey actions.
  • Integration credentials are supplied in the Authorization header according to the selected Pisano API contract.

Event Driven REST Integration

SAP SuccessFactors Configuration and Processing

The event driven option uses a SuccessFactors employee lifecycle event to initiate a REST request to Pisano.

The SAP configuration includes the following activities:

  • Select the employee lifecycle event in Intelligent Services Center and enable the required publishing rules.
  • Create an Integration Center integration for the event and select REST with JSON output.
  • Select the required employee fields, filters, and enrichment fields.
  • Configure the receiver URL and supported authentication.
  • Define the event timing and save the event to integration association.
  • Run a controlled test.
  • Verify the event logs and Integration Center execution results.

If the SAP outbound authentication and header format matches the Pisano endpoint, the REST request can be tested directly.

When mapping, authentication conversion, delayed dispatch, durable retry, or central monitoring is required, the customer’s existing integration service or middleware can perform these functions before calling Pisano.

Event Date and Survey Timing

The event publication time, HR effective date, and intended survey date are not always the same.

For example, a future hire may be entered in SuccessFactors before the employee’s first working day.

For onboarding surveys, the survey timing should be defined using an offset from the effective hire date. The employee status and contact information should also be checked again before dispatch.

Suggested Event Data

The exact fields depend on the SuccessFactors tenant. A practical event payload can include the following fields:

{
  "eventKey": "tenant:EMP-12345:hire:2026-10-01:1",
  "employeeId": "EMP-12345",
  "effectiveDate": "2026-10-01",
  "eventType": "Employee Hire",
  "email": "employee@example.com",
  "phone_number": "+491234567890",
  "name": "Jane Doe",
  "department": "Engineering",
  "location": "Berlin"
}

Use a stable eventKey so the same business event can be recognised if it is replayed.

Pisano Target APIs

The event driven integration can use the following Pisano APIs.

Email Sharing API
POST https://<pisanoURL>/v1/email_campaigns/<campaign_id>/email_sharings/ 

Use this endpoint when Pisano should initiate survey email delivery. Confirm the tested Authorization header and context field for the target tenant.

Example request:

curl --location 'https://<pisanoURL>/v1/email_campaigns/<campaign_id>/email_sharings/' \
--header 'Authorization: <token>' \
--header 'Content-Type: application/json' \
--data '{
  "emails": ["<email>"],
  "custom_attributes": {
    "<email>": {
      "name": "<name>",
      "external_id": "<external_id>",
      "phone_number": "<phone_number>"
    }
  },
  "transactional_data": {
    "<email>": {
      "EmployeeEvent": "<employee_event>",
      "Department": "<department>",
      "Location": "<location>"
    }
  }
}'

The request uses the employee email as the recipient key. Custom attributes can include the employee name, external ID, and phone number. Transactional data can include the employee event, department, and location.

SMS Sharing API
POST https://<pisanoURL>/v1/sms_campaigns/<campaign_id>/sms_sharings/ 

Use this endpoint when Pisano should initiate survey SMS delivery. The employee phone number and SMS provider or channel configuration are required.

Example request:

curl --location --request POST 'https://<pisanoURL>/v1/sms_campaigns/<campaign_id>/sms_sharings/' \ --header 'Authorization: <token>' \ --header 'Content-Type: application/json' \ --data-raw '{
  "phone_numbers": ["<phone_number>"],
  "custom_attributes": {
    "<phone_number>": {
      "name": "<name>",
      "external_id": "<external_id>",
      "email": "<email>"
    }
  },
  "built_in_responses": {
    "<phone_number>": {
      "EmployeeEvent": "<employee_event>",
      "Department": "<department>",
      "Location": "<location>"
    }
  }
}'

The request uses the employee phone number as the recipient key. Custom attributes can include the employee name, external ID, and email. Built in responses can include the employee event, department, and location.

Link Sharing API
POST https://<pisanoURL>/external/v1/link_sharings/<link_channel_id>/generate_link 

Use this endpoint when an external system will deliver the survey invitation. Pisano returns one personalised survey link for the employee. The external system remains responsible for delivering the link.

Example request body:

{
  "customer": {
    "email": "employee@example.com",
    "external_id": "EMP-12345",
    "name": "Jane Doe"
  },
  "built_in_responses": {
    "EmployeeEvent": "Employee Hire",
    "Department": "Engineering",
    "Location": "Berlin"
  },
  "options": {
    "shorten_url": true
  }
}

EmployeeEvent, Department, and Location are example Pisano schema codes. The configured schema codes and data types in the target environment must match the request.

Scheduled CSV and SFTP Integration

SAP Export

Create a scheduled Integration Center integration with:

  • SuccessFactors as the source
  • SFTP as the destination
  • CSV as the output format

Select the employee population, columns, filters, and schedule. Then run a controlled export.

For new Integration Center SFTP configurations, use the SAP supported port and authentication method for the target tenant.

File Type and Delivery Rules

Each exported file should be classified as either a complete snapshot or a delta.

A complete snapshot must not cause previously accepted invitations to be sent again.

A delta requires a clear watermark or recovery rule for late or missed records.

File Contract and Pisano Workflow

The file contract should be agreed before implementation. It should define:

  • UTF 8 encoding
  • Delimiter
  • Headers
  • Null handling
  • Date and time format
  • Time zone
  • File completion rule

Example file:

employee_id,email,name,department,programme_period
EMP-10001,jane@example.com,Jane Doe,Engineering,2026Q4
EMP-10002,john@example.com,John Smith,Finance,2026Q4

Pisano Workflow then:

  • Downloads the agreed file and parses its rows.
  • Maps employee identifiers and contact fields to the correct Pisano customer fields.
  • Applies eligibility and suppression rules before survey delivery.
  • Uses a completion convention, such as a final rename or completion marker, so Pisano does not read a partially uploaded file.
  • Keeps a stable batch or invitation key so a replayed file does not resend previously accepted invitations.
  • Confirms the exact file transfer protocol during setup. SFTP and FTPS are different protocols.

Field Mapping

Field mapping should connect the business meaning of each employee attribute with its SuccessFactors source and the corresponding Pisano destination or processing rule.

Business Meaning SuccessFactors Source Pisano Destination or Rule
Person identity personIdExternal or agreed enterprise ID customer.external_id or recipient keyed attributes. Use one stable person key.
Employment identity userId or employment key Keep as a processing or context key when needed. Do not assume it equals person identity.
Email, phone, name Selected contact record Use endpoint specific customer fields. Validate the correct address or number and language.
Department and location Effective dated job or organisation record Use configured survey context or schema codes or an approved customer profile field.
Event or due date Event type, effective date, and survey offset Use for eligibility, timing, and duplicate control.
Programme period Agreed campaign cycle Include in the invitation key so legitimate future surveys remain possible.

For Link Sharing, use the documented customer identity fields, such as email, phone number, name, and external ID.

Additional HR attributes should be sent only through supported survey context or schema or another validated profile operation.

Security, Monitoring, and Production Checks

The following checks should be considered before production use:

  • Transfer only the employee attributes required for the survey use case.
  • Use HTTPS or verified SFTP.
  • Store Pisano credentials securely.
  • Assign an owner for credential rotation and revocation.
  • Treat personalised survey links as sensitive information.
  • Do not treat URL shortening or URL encoding as a confidentiality control.
  • Track API acceptance separately from provider delivery and survey completion.
  • Keep stable invitation or batch identifiers to prevent duplicate sends after replay or retry.
  • If a request may have reached Pisano but the response is lost, do not resend it blindly. Reconcile the outcome first.
  • Test future hires, changed dates, cancellation, rehire, missing contact information, duplicate events or files, and representative data volume.

Decisions Before Implementation

The following decisions should be confirmed before implementation:

  • Survey use case, audience, and required delivery timing
  • Selected SAP event or scheduled population and the fields available in the tenant
  • Employee identity key, repeat invitation rules, and anonymity or confidentiality model
  • Pisano environment, survey flow or channel, endpoint contract, and effective rate limits
  • Direct REST call versus the customer’s integration platform for authentication, mapping, retry, and delayed dispatch
  • For file integration, the exact protocol, SFTP credentials or keys, file completion convention, and complete Pisano Workflow chain

Acceptance Criteria

The integration should meet the following acceptance criteria:

  • Only the intended employees are selected.
  • The survey is initiated at the agreed time.
  • The target Pisano environment accepts the tested Email, SMS, or Link Sharing request.
  • Mapped fields have the agreed meaning and data type.
  • A replayed event or file does not resend a previously accepted invitation.
  • Incomplete files are not processed.
  • Failed rows can be recovered in a controlled way.
  • API acceptance, provider delivery, and feedback completion can be distinguished operationally.