Skip to main content

Post Account Updates

Allows a partner to push different types of account updates to Flex. This is a web hook endpoint that accepts many different types of updates. Processing of the updates is done out of band.

note

This endpoint is hosted by Flex. If you are a multi biller partner, you must use the endpoint with both biller and account params, if you are a single biller partner, you should use the endpoint with just an account parameter.

Endpoint

POST /sbi/account/:accountId

Base URL: https://partner-bridge.{env}.getflex.com

Idempotency

This endpoint enforces Idempotency by the payloads update_id and the Partner’s Client Id. When a duplicate update is provided it will be ignored, even if the content of the update is different from previous versions. The HTTP code will still be 202 Accepted.

Request

Headers

HeaderTypeRequiredDescription
X-Client-IdstringYesYour client ID (provided by Flex)
X-Api-KeystringYesYour API key (provided by Flex)
Content-TypestringYesMust be application/json
Idempotency-KeystringYes

Request Params

ParamRequiredDescription
account_idyesThe account id in the partner’s system

Request Body

{
"update_id": "9d936acb-25dc-49c4-b01e-022c0f5c68aa",
"type": "RefundIssued",
"data": {
"amount_in_cents": 10000,
"refund_date": "2026-01-01",
"refund_id": "44e94edc-f3f8-46ed-9f07-1bafa200f708",
"reason": "A reason to refund"
}
}
FieldTypeRequiredDescription
update_idstringtrueThe unique id for this update from the Partner. This plus the Partner’s client id are the Idempotency Key.
typeenum<RefundIssued, PriceAdjustment, AccountCancellation>trueThe type of update the Partner is communicating to Flex about this account.
dataRefundIssued, PriceAdjustment, AccountCancellation, BalanceUpdatetrueThe details about the update depending on the update type
reasonStringfalseA human readable reason for the refund.

RefundIssued

A RefundIssued event should be sent to Flex whenever funds previously sent by Flex to the biller are being sent back to Flex. This is money Flex will need to credit or refund to the customer.

FieldTypeRequiredDescription
amount_in_centsinttrueThe amount of money that is being refunded to the account and Flex will receive back from the Biller
refund_dateyyyy-mm-ddtrueThe date the funds were sent back to Flex.
refund_idStringyesThe id of the refund in the partner’s system.

PriceAdjustment

A PriceAdjustment event should be sent to Flex whenever a paid bill has had its price adjusted. This will allow Flex to ensure it is well setup to underwrite the customer for future bills as well as disperse new funds to the biller if needed.

This event will not trigger a refund to the customer as that is handled by the RefundIssued event.

FieldTypeRequiredDescription
old_amount_in_centsIntegertrueThe amount before the adjustment to the account
new_amount_in_centsIntegertrueThe amount after the adjustment to the account

AccountCancellation

An AccountCancellation event should be sent to Flex when the customer's account with the biller is canceled. This will enable Flex to correctly reflect the account status to the customer. Flex can also get this information by pulling the Get Account endpoint.

FieldTypeRequiredDescription
effective_dateString, YYYY-MM-DDtrueThe date at which the cancellation will take effect

Response

Success (202 ACCEPTED)

{
"message": "Request accepted."
}

Response Fields

FieldTypeDescription
messageStringA human readable description of the result

Error Responses

404 Not Found

Returned when the client ID is not recognized or the account cannot be found.

{
"code": "NOT_FOUND",
"message": "Resource not found"
}

500 Internal Server Error

Returned when an unexpected error occurs on the Flex side.

{
"code": "INTERNAL_ERROR",
"message": "An unexpected error occurred"
}