This document is intended to facilitate integration with Fiserv's PSP Boarding API for capture acceptance terms, providing a flow overview and details of the new endpoints.
This document is intended to facilitate integration with Fiserv's Pix Hub Onboarding API, providing an overview for managing account holders and stores. The main operations described are:
Authentication: Generate the token and HMAC signature which are required for all requests.
Store: Register, update, retrieve and delete stores.
Webhook management: Register your webhook URL to receive notifications from the boarding process.
Protocol: Retrieve protocol information.
Standard Headers
All requests require the following headers:
Header
Description
Authorization
OAuth 2.0 Bearer token. See POST /token
apikey
API key provided by Fiserv during the integration
x-timestamp
Request timestamp. Also required in the HMAC signature
x-hmac-signature
HMAC signature. See HMAC Calculation section
x-request-id
Unique random ID to identify the request
Async Processing
Depending on the operation, Pix Hub Onboarding will process requests either synchronously or asynchronously.
Asynchronously: A unique protocol identification (UUID-v4) will be provided in the Pix Hub Onboarding response, along with an HTTP 202 – Accepted response.
Synchronously: Expected HTTP 201 – Created or HTTP 200 – OK.
Error Format
All errors handled are returned in the following standard format:
{
"type": "/error/conflict",
"title": "Conflict",
"status": 409,
"detail": "Status code indicates that the request could not be completed due to a conflict with the current state of the target resource",
"instance": "/omnihub/onboard/v4/pix-gateway/stores",
"properties": {
"protocolId": "725040be-54f2-4546-9f6a-1f591fc60318",
"additionalDetails": [
{
"errorCode": "409",
"errorMessage": "Additional error information"
}
],
"timestamp": "2025-05-18T19:21:37.846642896Z"
}
}
POST /gateway/token
Endpoint that generates an OAuth 2.0 bearer token required for all requests. A valid combination of username and password (or client_id and client_secret) are required.
true if the protocol is in final state (no more processing expected)
externalProtocolId
string
[Optional] If provided during the original request
payload
object
Original payload
links
object
HATEOAS related links
events[].omniEventId
string
Event UUID
events[].eventType
string
Event type
events[].responseCode
string
Event response code
events[].description
string
Event description
events[].eventStatus
string
Event status: SUCCESS, SKIP, ERROR
events[].eventSource
string
Pix Hub Onboarding component that produced the event
Responses
Code
Description
200
OK
400
Bad Request. See Error format
404
Not Found. See Error format
Webhooks
Configure the webhook URL to receive notifications from async boarding processes. For every request that returns HTTP 202 – Accepted, Pix Hub Onboarding will process it asynchronously. All events generated will trigger the webhook.
PUT /onboard/api/v4/webhooks
Register or update the webhook URL to receive notifications from the async boarding processes. An auth object can be provided for Pix Hub Onboarding to authenticate with the external URL before making the notification.
Request Fields
Property
Mandatory
Type / Size
Description
url
yes
String / 255
URL to receive notifications
authType
yes
String
Authentication type. Allowed: OAuth2, HMAC2, NONE
authSettings
no
Object
Authentication Settings
authSettings.authUrl
no
String / 255
Authentication URL. Mandatory if authType is OAUTH2
Register or update the webhook URL to receive notifications from the async boarding processes. An auth object can be provided for Pix Hub Onboarding to authenticate with the external URL before making the notification.
Request Fields
Property
Mandatory
Type / Size
Description
url
yes
String / 255
URL to receive notifications
auth
no
Object
Optional authentication object
auth.type
yes
String
Authentication type. Allowed: OAuth2.0-Bearer
auth.url
yes
String / 255
Authentication URL
auth.clientId
yes
String
Client ID used to authenticate
auth.clientSecret
yes
String / 255
Client secret used to authenticate
Responses
Code
Description
204
No Content – successful execution
400
Bad Request. See Error format
GET /onboard/api/v3/webhook (Deprecated)
Retrieve current webhook settings.
Response Fields
Property
Type
Description
url
String
URL to receive notifications
Responses
Code
Description
200
OK
404
Not Found. See Error format
DELETE /onboard/api/v3/webhook (Deprecated)
Remove the current webhook configuration.
Responses
Code
Description
204
No Content – successful execution
404
Not Found. See Error format
Webhook Callbacks
Callback Fields v4
Property
Type
Description
protocolId
String
Protocol unique identifier
externalProtocolId
String
External protocol ID (provided on original request)
Account Holder: Represents the CNPJ to which Stores and the registered Pix keys belong to.
Store: Multiple per CNPJ; can be associated only with 1 Account Holder. Needs bound credentials to it to perform transactions. Identified by a unique composite key: establishmentId + externalReferenceId.
Credential: A unique identification given when registering a Pix key on the platform. A credential belongs to an Account Holder and can be bound to a Store for transactional use.
HATEOAS
Most Pix Gateway endpoints include a links property in the response for API discoverability. The exposed links may change in the future. For every endpoint documented, expect the links property to contain at least what is listed, but possibly more.
Relative resources
During requests, some API fields that reference business entities can be filled by two "kinds" of data:
Search Store by document, Account Holder, or external reference ID, optionally filtered by ISV partner. At least one of document, accountHolder or externalReferenceId must be informed.
Request Fields
Property
Type
Description
Mandatory
$pageoffset (query)
Number
Offset for pagination, starting from 0. Default: 0
no
$pagelimit (query)
Number
Limit of items per page. Default: 10
no
document
Object
The resource's store document
no*
document.type
String
Document type (CNPJ / CPF)
no*
document.number
String
Document number
no*
accountHolder
Object
Relative resource for the Account Holder
no*
accountHolder.rel
String
HATEOAS relative Account Holder URL
no*
externalReferenceId
String
Search by reference used to identify the store externally
no*
* At least one of document, accountHolder, or externalReferenceId is required.
Creates the store for Pix operations in the Pix Gateway structure. In this endpoint, you need to inform the Account Holder and it is possible to create credentials and configure routing contingencies or balancing based on PSPs.
Note: It is not possible to create the same store twice, but it IS possible to use the same document for two stores. The externalReferenceId field must be unique for stores with the same legal document, including the blank string.
Request Fields
Property
Mandatory
Type / Size
Description
document
yes
Object
Store document data
document.type
yes
String
Store document type (CPF / CNPJ)
document.number
yes
String / [11, 18]
Store document number
externalReferenceId
no
String
Additional store identifier. Must be unique for stores with the same legal document
address
yes
Object
Store address data
address.country
yes
String / 2
Address country code (ISO 3166-1 alpha-2). Recommended values are BR, AR and UY. Other values may not be supported
address.locality
yes
String / 30
Store district
address.city
yes
String / 15
Store city
address.number
yes
String / 9
Store address number
address.postalCode
yes
String / [8, 9]
Store postal code
address.province
yes
String / 2
Store state abbreviation (ISO 3166-2)
address.street
yes
String / 110
Store street
address.subNumber
no
String / 30
Store address complement
tradeName
yes
String / 25
Store trade name
transactionCallback
no
Object
Callback data for transaction purposes
transactionCallback.url
yes
String / 255
Callback URL for payment transaction purposes
transactionCallback.apiKey
yes
String / [24, 50]
API key used to sign the callback request
transactionCallback.apiSecret
yes
String / [32, 64]
API secret used to sign the callback request
accountHolder
yes
Object
Store's Account Holder data
accountHolder.rel*
no
String / 255
HATEOAS relative Account Holder URL. If provided, uses this resource; if not, creates a new account holder
accountHolder.document.type**
no
String
Account Holder document type (CPF / CNPJ)
accountHolder.document.number**
no
String / [11, 18]
Account Holder document number
accountHolder.legalName**
no
String / 100
Account holder legal name
router
no
Object
n
router.routerType
yes
String
Routing type: BALANCING or CONTINGENCY
router.routes[].balancingWeight
no
Number
Route's balancing weight (used in BALANCING routing)
router.routes[].pspIspb
yes
String / 8
Route's PSP ISPB code
router.routes[].routeOrder
no
Number
Route order for CONTINGENCY routing (1 = first route)
automaticPix
no
Array
Automatic Pix configuration list
automaticPix[]
no
Object
Automatic Pix configuration item
automaticPix[].pspIspb
yes
String / 8
Automatic Pix - PSP ISPB code
automaticPix[].agency
yes
String
Automatic Pix – agency number
automaticPix[].account
yes
String
Automatic Pix – account number
automaticPix[].accountType
yes
String
Automatic Pix – account type
credentials
no
Array
List containing credential data
credentials[]
no
Object
Object containing a specific Pix credential's data
credentials[].rel*
no
String / 255
Relative resource for credential
credentials[].pspIspb**
no
String / 8
Credential's PSP ISPB code
credentials[].pixClientId**
no
String
Credential's Pix Client ID
credentials[].pixClientSecret**
no
String
Credential's Pix Client secret
credentials[].pixKey**
no
String
Credential's Pix key
credentials[].transactionalDocument
no
String
Transactional document. Some PSPs require this additional information
credentials[].default
no
Boolean
Whether this credential should be used as default for transactions
credentials[].dynamicFields
no
Object
Dynamic fields. Key value format
credentials[].name
no
String
Credential's name
credentials[].pixKeyStoreAssociation
no
Object
Specific Pix key configurations for this store's use of the credential
credentials[].pixKeyStoreAssociation.pixKey
yes
String
Specific Pix key for use by the store
credentials[].pixKeyStoreAssociation.pixKeyType
yes
String
Pix key type: CNPJ, CPF, CELULAR, EMAIL, or ALEATORIO
Note: Use either the fields marked with * or **.
Request Example (inline Account Holder and Credential data)
Partial update a Pix Gateway store. Only the fields sent in the request will be updated. Also used to create a new credential to be used in an existing store.
Request Fields
Property
Mandatory
Type / Size
Description
id (path)
yes
String
Store unique identification
transactionCallback
no
Object
Callback data for transaction purposes
transactionCallback.url
yes
String / 255
Callback URL for payment transaction purposes
transactionCallback.apiKey
yes
String / [24, 50]
API key used to sign the callback request
transactionCallback.apiSecret
yes
String / [32, 64]
API secret used to sign the callback request
router
no
Object
Transaction routing configuration
router.routerType
yes
String
Routing type: BALANCING or CONTINGENCY
router.routes[].balancingWeight
no
Number
Route's balancing weight
router.routes[].pspIspb
yes
String / 8
Route's PSP ISPB code
router.routes[].routeOrder
no
Number
Route order for CONTINGENCY routing
automaticPix
no
Array
Automatic Pix configuration list
automaticPix[]
no
Object
Automatic Pix configuration item
automaticPix[].pspIspb
yes
String / 8
Automatic Pix - PSP ISPB code
automaticPix[].agency
yes
String
Automatic Pix – agency number
automaticPix[].account
yes
String
Automatic Pix – account number
automaticPix[].accountType
yes
String
Automatic Pix – account type
credentials
no
Array
List containing credential data
credentials[]
no
Object
Object containing a specific Pix credential's data
credentials[].rel*
no
String / 255
Relative resource for credential
credentials[].pspIspb**
no
String / 8
Credential's PSP ISPB code
credentials[].pixClientId**
no
String
Credential's Pix Client ID
credentials[].pixClientSecret**
no
String
Credential's Pix Client secret
credentials[].pixKey**
no
String
Credential's Pix key
credentials[].transactionalDocument**
no
String
Transactional document. Some ISPBs have this additional information
credentials[].dynamicFields**
no
String
Dynamic fields
credentials[].name**
no
String
Credential’s Name
credentials[].pixKeyStoreAssociation
no
Object
Specific Pix key configurations for this store's use of the credential
credentials[].pixKeyStoreAssociation.pixKey
yes
String
Specific Pix key for use by the store
credentials[].pixKeyStoreAssociation.pixKeyType
yes
String
Pix key type: CNPJ, CPF, CELULAR, EMAIL, or ALEATORIO
credentials[].default
no
Boolean
Whether this credential should be used as default for transactions
Delete the given Credential. A Credential bound to any store must be unbound before it is deleted.
For credential unbinding, check the DELETE /v4/pix-gateway/stores/{store-id}/credentials/{credential-id} endpoint in the Store section
Request Fields
Property
Type
Description
id (path)
String
Credential unique identifier
Responses
Code
Description
204
No Content – successful execution
PSP
GET /v4/pix-gateway/psps
Retrieve all available PSPs, optionally filtering by activity status. Example: /v4/pix-gateway/psps?status=I. If no filter parameter is provided, all PSPs will be listed.
Request Fields
Property
Type
Description
status (query)
String
PSP status filter: I – Integrated, C – Inactive, N – Not integrated