NAV

AccountService

AccountService provides all the methods for retrieving and summarizing account information.

RetrieveAccount

RetrieveAccount retrieves the account information for a single account.

GET /v2/account/{account_id}

RetrieveAccountRequest

RetrieveAccountRequest holds the get account request information.

FieldTypeLabelDescription
account_idstringaccount_id is the account unique identifier.

RetrieveAccountResponse

RetrieveAccountResponse holds the get account response information.

FieldTypeLabelDescription
accountbrankas.v2.api.Accountaccount is the account information.
refresh_dategoogle.protobuf.Timestamprefresh_date is the timestamp when the balance data was updated.

RetrieveAccounts

RetrieveAccounts retrieves the list of all accounts registered to the brankas service.

GET /v2/account

RetrieveAccountsResponse

FieldTypeLabelDescription
accountsbrankas.v2.api.Accountrepeatedaccounts is a list of all organization accounts.

UpdateAccount

UpdateAccount changes the nick of an account.

PUT /v2/account/{account_id}

UpdateAccountRequest

UpdateAccountRequest holds the update account request information

FieldTypeLabelDescription
account_idstringaccount_id is the account unique identifier.
nickstringnick is the new nickname to apply to the account.

UpdateAccountResponse

UpdateAccountResponse holds the update account response information

FieldTypeLabelDescription
statusbrankas.v2.api.Statusstatus defines the result of the request.

MetaService

MetaService provides metadata method for the Brankas API.

Metadata

Metadata returns the system metadata.

GET /v2/meta

MetaResponse

MetaResponse is the metadata response.

FieldTypeLabelDescription
countriesCountryrepeatedcountries is the list of countries.
banksBankrepeatedbanks is the list of banks.
currenciesCurrencyrepeatedcurrencies is the list of currencies.

UtilService

UtilService provides utility methods for the Brankas API.

CheckStatus

CheckStatus retrieves the server health status.

GET /v2/status

package mainimport ("io""net/http""os")func main() {resp, _ := http.Get("https://a.brank.as/v2/status")defer resp.Body.Close()io.Copy(os.Stdout, resp.Body)}
curl https://a.brank.as/v2/status

CheckStatusResponse

CheckStatusResponse contains information about the underlying system status.

{ "status": "OK" }
FieldTypeLabelDescription
statusCheckStatusResponse.OkStatusstatus defines the result of the request.

Echo

Echo echoes the passed message request.

POST /v2/echo

package mainimport ("bytes""io""net/http""os")func main() {resp, _ := http.Post("https://a.brank.as/v2/echo", "json",bytes.NewBuffer([]byte(`{ "msg": "Hello, World!"}`)))defer resp.Body.Close()io.Copy(os.Stdout, resp.Body)}

EchoMessage

EchoMessage is an echo message.

FieldTypeLabelDescription
msgstringmsg is the content to echo.

AuthService

AuthService defines the authorization service for Brankas systems.

ConfirmationCode

ConfirmationCode confirms the input code or email for registration. Status code signals success (Confirmed: 200)

POST /v2/confirmcode

ConfirmationCodeRequest

ConfirmationCodeRequest contains the confirmation code reqest.

FieldTypeLabelDescription
invite_codestringinvite_code is the alphanumeric invite code.
emailstringemail is the confirmation email address.

Login

Login validates user account authorization.

POST /v2/login

LoginRequest

LoginRequest contains the login credentials.

FieldTypeLabelDescription
credentialbrankas.v2.api.Credentialcredential is the login credential.

LoginResponse

LoginResponse contains the JWT token.

FieldTypeLabelDescription
tokenstringtoken is the authentication token that can be used to access Brankas APIs.
resourcesLoginResponse.ResourcesEntryrepeatedresources is for internal use only. There are no compatibility promises for any resources field.

RevokeToken

RevokeToken revokes the token’s authorized session. status code signals success (Revoked: 200, Bad Token: 401)

POST /v2/revoke

RevokeRequest

RevokeRequet contains the revoke JWT request details.

FieldTypeLabelDescription
tokenstringtoken is the JWT to be revoked.

ValidateToken

ValidateToken validates a given JWT token.

POST /v2/validate

ValidateRequest

ValidateRequest contains the JWT token to be validated.

FieldTypeLabelDescription
tokenstringtoken is the jwt token.

ValidateResponse

ValidateResponse contains the validated JWT details.

FieldTypeLabelDescription
adminbooladmin is a flag to identify administrative priveledges within the organization.
org_idstringorg_id is the identifier of the access validated organization.

CredentialService

CredentialService provides all the methods for creating, retrieving, and manipulating bank credentials.

CreateCredential

CreateCredential creates a new bank credential entry for the specified bank code.

POST /v2/bankcredential

CreateCredentialRequest

CreateCredentialRequest holds the create bank credential request information.

FieldTypeLabelDescription
bank_codebrankas.v2.api.BankCodebank_code is the bank code (MANDIRI, BCA, etc).
credentialbrankas.v2.api.Credentialcredential is the encrypted credential.
titlestringtitle is optional title to associate with the bank credential.

CreateCredentialResponse

CreateCredentialResponse holds the create bank credential response information.

FieldTypeLabelDescription
statusbrankas.v2.api.Statusstatus defines the result of the request.
credential_idstringcredential_id is the created credential id.

DeleteCredential

DeleteCredential deletes a bank credential.

DELETE /v2/bankcredential/{credential_id}

DeleteCredentialRequest

DeleteCredentialRequest holds the delete bank credential request information.

FieldTypeLabelDescription
credential_idstringcredential_id is the credential id to delete.

DeleteCredentialResponse

DeleteCredentialResponse holds the delete bank credential response information.

FieldTypeLabelDescription
statusbrankas.v2.api.Statusstatus defines the result of the request.

DisbursementService

DisbursementService provides methods for disbursing funds and retrieving disbursements

CreateBankCredential

CreateBankCredential creates a partial credential for a client on a bank. This way, the client’s calls to CreateDisbursement will only need to contain their ‘credential.secret’, and won’t need to include their ‘credential.identifier’ and ‘disbursement.corporate_id’.

POST /v2/bankcredential

CreateBankCredentialRequest

CreateBankCredentialRequest is used to create a partial credential for a client on a bank

FieldTypeLabelDescription
bank_credentialBankCredentialbank_credential to create

CreateBankCredentialResponse

CreateBankCredentialResponse returns whether the bank credential was created successfully or not

FieldTypeLabelDescription
resultResultresult will return a success or error message for the response

CreateDisbursements

CreateDisbursement will initiate a new disbursement to transfer funds from one account to another

POST /v2/disbursements

CreateDisbursementsRequest

CreateDisbursementsRequest will initiate disbursement payments to merchants clients

FieldTypeLabelDescription
credentialsCreateDisbursementsRequest.CredentialsEntryrepeatedAPI’
disbursementsDisbursementrepeateddisbursements is the disbursements to attempt to create

CreateDisbursementsResponse

CreateDisbursementsResponse returns the result of a disbursements transaction

FieldTypeLabelDescription
resultDisbursementResultrepeatedresult will return a success or error message for the response for each disbursement

DeleteBankCredential

DeleteBankCredential deletes a partial credential for a client on a bank

DELETE /v2/bankcredential/{bankcredentialtype}

DeleteBankCredentialRequest

DeleteBankCredentialRequest will delete a partial credential for a client on a bank

FieldTypeLabelDescription
typestringtype for which bank_credential to delete

DeleteBankCredentialResponse

DeleteBankCredentialResponse returns whether the bank credential was deleted

FieldTypeLabelDescription
resultResultresult will return a success or error message for the response

ExternalStatusUpdates

ExternalStatusUpdates will initiate updates from the external bank api for the selected disbursements and populated the internal disbursements. The returned disbursements are the ones that are already stored.

GET /v2/external-status-updates

ExternalStatusUpdatesRequest

ExternalStatusUpdateRequest will call the external bank api for status updates about created disbursements. This request will initiate a background task to call the external banks apis.

FieldTypeLabelDescription
credentialsExternalStatusUpdatesRequest.CredentialsEntryrepeatedAPI’
disbursement_idsstringrepeateddisbursement_ids are the disbursements to get status updates for

ExternalStatusUpdatesResponse

ExternalStatusUpdatesResponse will return whether the disbursement is valid and the stored disbursement data

FieldTypeLabelDescription
resultDisbursementResultrepeatedresult will return a success or error message for the response for each disbursement

ProcessFutureDisbursements

PrcocessFutureDisbursements will send all the saved, future disbursements for a client to the bank to process

POST /v2/disbursements-process

ProcessFutureDisbursementsRequest

ProcessFutureDisbursementsRequest will start processing stored disbursements

FieldTypeLabelDescription
credentialsProcessFutureDisbursementsRequest.CredentialsEntryrepeatedAPI’
disbursement_idsstringrepeateddisbursement_ids are a list of future disbursements that should be processed now

ProcessFutureDisbursementsResponse

ProcessFutureDisbursementsResponse will return the results of processing stored disbursements

FieldTypeLabelDescription
resultDisbursementResultrepeatedresult will return a success or error message for the response for each disbursement

RetrieveBankCredentials

RetrieveBankCredentials will return all the bank credentials for a client

GET /v2/bankcredential

RetrieveBankCredentialsResponse

RetrieveBankCredentialsResponse returns all the bank credentials for a client

FieldTypeLabelDescription
resultResultresult will return a success or error message for the response
bank_credentialsBankCredentialrepeatedbank_credentials are all the stored BankCredential’s we have for a client

RetrieveDisbursements

RetrieveDisbursements will return all the disbursements for a given date range

GET /v2/disbursements

RetrieveDisbursementsRequest

RetrieveDisbursementsRequest is used to get a list of disbursements that match the list of disbursement ids, and that fall between the startdate and enddate. If startdate or enddate isn’t specified, all disbursements matching the disbursement ids are returned. RetrieveDisbursementsRequest can also be filtered using page, bank and status.

FieldTypeLabelDescription
disbursement_idsstringrepeateddisbursement_ids are a list of disbursement ids to return disbursements for
start_dateDatestart_date is the start date of the range inclusive of the date
end_dateDateend_date is the end date of the range inclusive of the date
pageint32page is the page number for showing the disbursements. When page is 0, then all disbursement requests are returned.
page_sizeint32page_size is the number of elements returned in a page.
bankBankCodebank is the filter to retrieve disbursements by certain banks.
statusStatusstatus is the filter to retrieve disbursements by the current status.

RetrieveDisbursementsResponse

RetrieveDisbursementsResponse returns a list of disbursements that fall inside the date range

FieldTypeLabelDescription
resultResultresult will return a success or error message for the response
disbursementsDisbursementrepeateddisbursements are the disbursements that fall within the specified date range

UpdateBankCredential

UpdateBankCredential updates a partial credential for a client on a bank

PUT /v2/bankcredential/{bankcredentialtype}

UpdateBankCredentialRequest

UpdateBankCredentialRequest is used to update a partial credential for a client on a bank

FieldTypeLabelDescription
typestringtype to update the bank_credential for
bank_credentialBankCredentialbank_credential data to update

UpdateBankCredentialResponse

UpdateBankCredentialResponse returns whether the bank credential were updated

FieldTypeLabelDescription
resultResultresult will return a success or error message for the response

MatchService

MatchService provides the methods for initiating a request for payment matching, and for manually associating transactions.

CancelMatch

CancelMatch cancels the match and removes all transaction associations.

POST /v2/match/{match_id}/cancel

CancelMatchRequest

CancelMatchRequest holds the cancel match request information.

FieldTypeLabelDescription
match_idstringmatch_id is the created match id.

CancelMatchResponse

CancelMatchResponse holds the cancel match response information.

FieldTypeLabelDescription
statusbrankas.v2.api.Statusstatus defines the result of the request.

CreateMatch

CreateMatch initiates a payment match.

POST /v2/match

CreateMatchRequest

CreateMatchRequest holds the create match request information.

FieldTypeLabelDescription
frombrankas.v2.api.AccountDescfrom is the from account information.
account_idstringaccount_id is the account identifier for the account to expect the transaction.
amountbrankas.v2.api.Amountamount is the payment amount.
memostringmemo is the user supplied short transaction memo.
expirygoogle.protobuf.Timestampexpiry is the deadline for matching a transaction for payment.
notestringnote is an optional user-defined field.

CreateMatchResponse

CreateMatchResponse holde the create match response information.

FieldTypeLabelDescription
statusbrankas.v2.api.Statusstatus defines the result of the request.
match_idstringmatch_id is the unique match identifier.
short_idstringshort_id is the short match id.

RetrieveMatch

RetrieveMatch retrieves the match data.

GET /v2/match/{match_id}

RetrieveMatchRequest

RetrieveMatchRequest holds the get match request information.

FieldTypeLabelDescription
match_idstringmatch_id is the unique match identifier.

RetrieveMatchResponse

RetrieveMatchResponse holds the get match response information.

FieldTypeLabelDescription
matchbrankas.v2.api.Matchmatch is the returned match information.

RetrieveMatches

RetrieveMatches retrieves the match data for a set of matches.

GET /v2/match

RetrieveMatchesRequest

RetrieveMatchesRequest holds the list of get matches request information.

FieldTypeLabelDescription
idsRetrieveMatchRequestrepeated

RetrieveMatchesResponse

RetrieveMatchesResponse holds the list of get matches response information.

FieldTypeLabelDescription
matchesbrankas.v2.api.Matchrepeated

UpdateMatch

UpdateMatch updates the match data.

PUT /v2/match/{match_id}

UpdateMatchRequest

UpdateMatchRequest holds the update match request information.

FieldTypeLabelDescription
match_idstringmatch_id is the unique match identifier.
amountbrankas.v2.api.Amountamount is the payment amount.
expirygoogle.protobuf.Timestampexpiry is the deadline for matching a transaction for payment.
notestringnote is an optional user-defined field.

UpdateMatchResponse

UpdateMatchResponse holde the update match response information.

FieldTypeLabelDescription
statusbrankas.v2.api.Statusstatus defines the result of the request.

OrgService

OrgService provides organization management.

CreateOrg

CreateOrg registers a new organization.

POST /v2/org

CreateOrgRequest

CreateOrgRequest holds the information to register an organization.

FieldTypeLabelDescription
user_agentstringuser_agent is the client user agent.
orgbrankas.v2.api.OrgProfileorg is the organization information.

CreateOrgResponse

CreateOrgResponse holds the response from registering an organization.

FieldTypeLabelDescription
statusOrgStatusstatus defines the result of the request.
org_idstringextra contains additional information if the registration failed.
tokenstringtoken contains an authorized token that allows registration of the org owner via orguser service.

RetrieveOrg

RetrieveOrg fetches the organization information.

GET /v2/org/{org_id}

RetrieveOrgRequest

RetrieveOrgRequest holds the get org request search parameters.

FieldTypeLabelDescription
org_idstringorg_id is the organization identifier

RetrieveOrgResponse

RetrieveOrgResponse holds the org information.

FieldTypeLabelDescription
orgbrankas.v2.api.OrgProfileorg is the organization information.
settingsbrankas.v2.api.OrgSettingssettings is the organization settings.

UpdateOrg

UpdateOrg updates organization data.

PUT /v2/org/{org_id}

UpdateOrgRequest

UpdateOrgRequest holds the update organization information.

FieldTypeLabelDescription
org_idstringorg_id is the organization unique identifier.
orgbrankas.v2.api.OrgProfileorg is the organization information.
settingsbrankas.v2.api.OrgSettingssettings is the organization settings.

UpdateOrgResponse

UpdateOrgResponse holds the update organization information.

FieldTypeLabelDescription
statusOrgStatusstatus defines the result of the request.

UserService

UserService allows managing organization users, such as the employees working for a company.

CreateUser

CreateUser registers a new organization user.

POST /v2/orguser

CreateUserRequest

CreateUserRequest holds the information to register an organization user.

FieldTypeLabelDescription
user_agentstringuser_agent is the client user agent.
credentialbrankas.v2.api.Credentialcredential is the initial credential to assign with the profile.
profilebrankas.v2.api.Profileprofile is the user’s initial profile information.

CreateUserResponse

CreateUserResponse holds the response from registering an organization user.

FieldTypeLabelDescription
statusProfileStatusstatus defines the result of the request.
extrastringextra contains additional information if the registration failed.
user_idstringuser_id is the user’s unique identifier.
tokenstringtoken is authorized to modify the orguser with UpdateUser.

RetrieveUsers

RetrieveUsers fetches all orgUsers matching the search parameters. Search is restricted to the authenticated organization.

GET /v2/orguser

RetrieveUserRequest

RetrieveUserRequest holds the parameters to retrieve an organization user.

FieldTypeLabelDescription
search_fieldsbrankas.v2.api.Profilesearch_fields holds search parameters.

RetrieveUserResponse

RetrieveUserResponse holds the matching organization users.

FieldTypeLabelDescription
profilesbrankas.v2.api.Profilerepeatedprofiles is the list of profiles.

UpdateUser

UpdateUser updates orgUser data.

PUT /v2/orguser/{user_id}

UpdateUserRequest

UpdateUserRequest holds the information to update an existing organization user.

FieldTypeLabelDescription
user_idstringuser_id is the user’s unique identifier.
profilebrankas.v2.api.Profileprofile is the updated profile information.

UpdateUserResponse

UpdateUserResponse holds the response from updating an organization user.

FieldTypeLabelDescription
statusProfileStatusstatus defines the result of the request.

ServiceTokenService

ServiceTokenService provides service token management for organizations.

CreateServiceToken

CreateServiceToken creates a new service token.

POST /v2/servicetoken

CreateServiceTokenRequest

CreateServiceTokenRequest holds the service token creation information

FieldTypeLabelDescription
expirygoogle.protobuf.Timestampexpiry is the expiry timestamp

CreateServiceTokenResponse

CreateServiceTokenResponse holds the response from creating a service token.

FieldTypeLabelDescription
token_idstringtoken_id is the id of the token created.
credentialbrankas.v2.api.Credentialcredential contains the created token.

DeleteServiceToken

DeleteServiceToken deletes a service token.

DELETE /v2/servicetoken/{token_id}

DeleteServiceTokenRequest

DeleteServiceTokenRequest holds a request to delete a service token.

FieldTypeLabelDescription
token_idstringtoken_id is the id of the token to be deleted.

RetrieveServiceTokens

RetrieveServiceTokens retrieves the service tokens associated with an organization.

GET /v2/servicetoken

RetrieveServiceTokensRequest

RetrieveServiceTokensRequest holds the request for the list of service tokens associated with an org. TODO: add scopes for filtering

RetrieveServiceTokensResponse

RetrieveServiceTokensResponse holds the list of tokens associated with an org.

FieldTypeLabelDescription
token_listTokenMetadatarepeatedtoken_list contains the metadata of the tokens associated with the org.

StatementService

StatementService provides all methods to fetch bank or accounts statement.

RetrieveStatements

RetrieveStatement retrieves summary of financial transactions which have occurred over a given period.

GET /v2/statement

Test it against the sandboxed bank. Use DUMMY_BANK_PERSONAL as the request’s bank code and any of the sandboxed bank user account as the request’s credential.

Visit sandboxed bank site

Below are the sandboxed bank user accounts:

IdentifierSecretSavingsCheckingNotes
user+1@domain.comuser+10001-123-001 (Rp)With three transaction entries
user+2@domain.comuser+20002-123-002 (Rp)
0002-123-003 (USD)
0002-123-004 (PHP)
0002-456-002 (Rp)
0002-456-003 (USD)
0002-456-004 (PHP)
With three transaction entries in each accounts
user+3@domain.comuser+30003-123-003 (Rp)With three transactions entries. Logs out the session after a second
user+4@domain.comuser+40004-123-004 (Rp)Missing currencies, destination/source accounts on some of its transaction entries
user+5@domain.comuser+50005-123-005 (Rp)0005-456-005 (Rp)No transaction entries
user+6@domain.comuser+60006-123-006 (Rp)With three transaction entries. Requires a two-factor key, which is user+6

All sessions will expire after 10 minutes except for user+3@domain.com.

RetrieveStatementsRequest

RetrieveStatementRequest holds the get request information

FieldTypeLabelDescription
bank_codebrankas.v2.api.BankCodebank_code is the bank code (MANDIRI, BCA, etc).
credentialbrankas.v2.api.Credentialcredential is the internet banking account credential.
period_daysint32period_days is the filter to search transactions that occurred over a given period. note: the behaviour of the search is depends upon each bank site.

RetrieveStatementsResponse

RetrieveStatementRespones hold the get statement response information.

FieldTypeLabelDescription
statement_idstringstatement_id is the unique identifier for the statement request.
statusStatementStatusstatus is the statement request status.
site_responsestringsite_response is an optional text response from the bank website.

TFAService

TFAService provides the methods for sending two-factor authentication tokens.

SendTFA

SendTFA submits a two-factor authentication code.

POST /v2/tfa

SendTFARequest

SendTFARequest holds the two-factor authentication request.

FieldTypeLabelDescription
purposeTFAPurposepurpose defines what this TFA token should be used for.
purpose_idstringid will be a bankcredential_id.
tokenstringtoken is the actual TFA token string.

SendTFAResponse

SendTFAResponse holds the two-factor authentication response.

FieldTypeLabelDescription
statusbrankas.v2.api.Statusstatus defines the result of the request.
auth_statusSendTFAResponse.Statusauth_status defines the result of the request.
status_msgstringstatus_msg is the bank status message.

TransferService

TransferService provides methods for transfer-related actions.

CreateTransfer

CreateTransfer initiates a transfer request.

POST /v2/transfer

CreateTransferRequest

CreateTransferRequest holds the create transfer request information.

FieldTypeLabelDescription
credsbrankas.v2.api.Credentialcreds is the user internet banking account credentials.
frombrankas.v2.api.AccountDescfrom is the source account information.
tobrankas.v2.api.AccountDescto is destination account information.
amountbrankas.v2.api.Amountamount is the transfer amount.
memostringmemo is the user supplied short transfer memo line.

CreateTransferResponse

CreateTransferResponse holds the create transfer response information.

FieldTypeLabelDescription
statusStatusstatus defines the result of the create transfer request.
transfer_idstringtransfer_id is brankas internal transfer id.
site_responsestringsite_response is an optional text response from bank website.

RetrieveTransfers

RetrieveTransfers retrieves the transfers associated with an org with optional filters.

GET /v2/transfer

RetrieveTransfersRequest

RetrieveTransfersRequest is used to get the transfers associated with an organization, with optional filters.

FieldTypeLabelDescription
transfer_idsstringrepeatedtransfer_ids is a list of transfers to return information for.

if it is provided, parameters other than order_by will be ignored. | page | int32 | | page is the page number for showing the transfers.

when page <= 0, the first page will be returned. | pagesize | int32 | | pagesize is the number of transfers returned in a page.

when pagesize <= 0, the default page size of 15 will be used. | orderby | RetrieveTransfersRequest.OrderBy | | order_by defines the order in which the results are returned.

if none is specified, by default it will be by date descending.

RetrieveTransfersResponse

RetrieveTransfersResponse holds the transfers that match the filters of a request.

FieldTypeLabelDescription
transfersTransferrepeatedtransfers are the transfers that match the filters of a request.
next_pageint32next_page is the number of the next page that can be returned.

if it is 0, there are no more pages available.

Datatypes

Package Namespace brankas.v2.account

RetrieveAccountRequest

RetrieveAccountRequest holds the get account request information.

FieldTypeLabelDescription
account_idstringaccount_id is the account unique identifier.

RetrieveAccountResponse

RetrieveAccountResponse holds the get account response information.

FieldTypeLabelDescription
accountAccountaccount is the account information.
refresh_dateTimestamprefresh_date is the timestamp when the balance data was updated.

RetrieveAccountsResponse

FieldTypeLabelDescription
accountsAccountrepeatedaccounts is a list of all organization accounts.

UpdateAccountRequest

UpdateAccountRequest holds the update account request information

FieldTypeLabelDescription
account_idstringaccount_id is the account unique identifier.
nickstringnick is the new nickname to apply to the account.

UpdateAccountResponse

UpdateAccountResponse holds the update account response information

FieldTypeLabelDescription
statusStatusstatus defines the result of the request.

Package Namespace brankas.v2.api

Account

Account contains information for a single bank account.

FieldTypeLabelDescription
account_idstringaccount_id is a unique bank account identifier.
typeType
owner_idsstringrepeatedowner_ids is the list of bank credential identifiers that own and have access to this account. The first in the list is the primary owner, and the list cannot be empty.
account_numberstringaccount_number is the account number.
nickstringnick is an optional nickname for the account.
balanceAmountbalance is the most recent account balance.

AccountDesc

AccountDesc holds information pertaining to an account.

FieldTypeLabelDescription
typeTypetype is the account info type.
bank_codeBankCodebank_code is a bank code. Only present when type is BANK.
identifierstringidentifier is a unique account id, profile id, or the bank account number and is interpreted based on the account info type.
holder_namestringholder_name is the name of the account holder.

Amount

Amount is a currency and number corresponding to an amount.

FieldTypeLabelDescription
curstringcur is the currency.
numstringnum is the numeric value.

Bank

Bank is a banking institution record.

FieldTypeLabelDescription
bank_codeBankCodebank_code is the bank institution identifier.
namestringname is the bank name.
country_codestringcountry_code is the bank location identifier.
enabledboolenabled is the system connection flag.
onlineboolonline is the bank system’s status flag.

BankInfo

BankInfo contains information about a bank.

FieldTypeLabelDescription
bank_codeBankCodebank_code is the bank code.
namestringname is the bank name (mandiri, bca, …).
titlestringtitle is the display title for the bank.
countrystringcountry is the country code (ID, US, SG, …).
enabledboolenabled indicates whether or not the bank is enabled.

BankStatus

FieldTypeLabelDescription
onlineboolonline is a status flag to show the bank server is online.
online_dateTimestamponline_date is the time of last update to the online flag.
timeoutbooltimeout is a status flag to show the bank session has been terminated.
timeout_dateTimestamptimeout_date is the time of last update to the timeout flag.
error_msgstringerror_msg holds any error messages from the bank.

CheckStatusResponse

CheckStatusResponse contains information about the underlying system status.

FieldTypeLabelDescription
statusOkStatusstatus defines the result of the request.

CoordinateInfo

CoordinateInfo contains info pertaining to a GPS coordinate.

FieldTypeLabelDescription
latdoublelat is the latitude.
longdoublelong is the longitude.

Country

Country is an country record.

FieldTypeLabelDescription
country_codestringcountry_code is the 2-character identifier.
languagestringlanguage is the primary language code.
namestringname is the country name.

Credential

Credential contains confidential access credential information.

FieldTypeLabelDescription
typeTypetype is the type of the credential.
identifierstringidentifier is the unique identifier for the credential (ie, a phone number, email, token, etc).
secretstringsecret is the secret to exchange for validating the credential.

Currency

Currency is a curency record.

FieldTypeLabelDescription
currency_codestringcurrency_code is the ISO 3 character currency code (ie, ‘USD’, ‘SGD’, etc).
symbolstringsymbol is the currency symbol (ie, ‘$’, ‘Rp.’).
separatorstringseparator is the thousands separator (ie, ‘.’, ‘,’).
decimalstringdecimal is the decimal character (ie, ‘.’, ‘,’).
digitsint32digits are the number of significant digits to display after the decimal.
show_digitsboolshow_digits dictates how to display
cformatstringcformat is a C-compatible formatting string (ie, ‘$%d.%d’, ‘Rp. %d,%d’).
cformat_shortstringcformat_short is the C-compatible formatting string to display the short format (ie, ‘$%d’, ‘Rp. %d’).

EchoMessage

EchoMessage is an echo message.

FieldTypeLabelDescription
msgstringmsg is the content to echo.

FieldInfo

FieldInfo contains information pertaining to a form field.

FieldTypeLabelDescription
field_numuint32field_num is the field number (ie, ordinal position).
typeType
namestringname is the name of the field.
titlestringtitle is the displayable title of the field.
valuestringvalue is the value of the field (if the field needs to be prepopulated).
optionsOptionsEntryrepeatedoptions are the options name value pairs for radio, check and select field types.
help_textHelpTextEntryrepeatedhelp contains a key, value pair of help text to be interpreted by the UI as necessary.
error_textErrorTextEntryrepeatederror_text contains the key, value pair of error text to be interpretted by the UI as necessary.
extrastringextra contains raw data to be interpreted by the field.
editablebooleditable is whether or not the field can be changed by the user.

ErrorTextEntry

FieldTypeLabelDescription
keystring
valuestring

HelpTextEntry

FieldTypeLabelDescription
keystring
valuestring

OptionsEntry

FieldTypeLabelDescription
keystring
valuestring

Filter

Filter contains the filter information for a single field.

FieldTypeLabelDescription
operationstringcomparison operation.
filter_termstringfilter_term is the input to the filter comparison.

FilterField

FilterField contains the filtering information for a single field.

FieldTypeLabelDescription
namestringname is the name of the data field being filtered.
filterFilterrepeatedfilter are the filtering operations to be applied to the field.

FilterSet

FilterSet contains a set of filters to be applied together.

FieldTypeLabelDescription
fieldsFilterFieldrepeatedfields contains the filtering for each filtered field.

FormInfo

FormInfo contains information pertaining to one step in a multi step form.

FieldTypeLabelDescription
typeTypetype is the form type.
stepuint32step is the 0..N state step number.
namestringname is the current step name.
titlestringtitle contains the displayable title of the form.
help_textHelpTextEntryrepeatedhelp contains a key, value pair of help text to be interpreted by the UI as necessary.
error_textErrorTextEntryrepeatederror_text contains the key, value pair of error text to be interpretted by the UI as necessary.
button_titlestringbutton_title is the text that should be displayed as the text for the form’s submission button.
fieldsFieldInforepeatedfields are the fields that need to be collected for the current state.

ErrorTextEntry

FieldTypeLabelDescription
keystring
valuestring

HelpTextEntry

FieldTypeLabelDescription
keystring
valuestring

Match

FieldTypeLabelDescription
match_idstringmatch_id is the unique match identifier.
short_idstringshort_id is the short match id.
account_idstringaccount_id is the account where the deposit is expected.
statusMatchStatusstatus defines the result of the request.
dateTimestampdate is the creation timestamp.
expiryTimestampexpiry is the match expiration timestamp.
from_accountAccountDescfrom_account is the debit account information.
memo_codestringmemo_code is the match identifier.
totalAmounttotal is the total amount to be matched.
notestringnote is an optional user-defined field.
settledTimestampsettled is the timestamp when the settling transaction was matched.
final_matchTransactionMatchfinal_match is the final match with a transaction.
possible_matchesPossibleMatchesEntryrepeatedid to TransactionMatch.

PossibleMatchesEntry

FieldTypeLabelDescription
keystring
valueTransactionMatch

MetaResponse

MetaResponse is the metadata response.

FieldTypeLabelDescription
countriesCountryrepeatedcountries is the list of countries.
banksBankrepeatedbanks is the list of banks.
currenciesCurrencyrepeatedcurrencies is the list of currencies.

OrgProfile

OrgProfile is the organization profile information.

FieldTypeLabelDescription
org_idstringorg_id is the organization unique identifier.
namestringname is the organization name.
addressstringaddress is the organization street address.
emailstringemail is the organization contact email.
phonestringphone is the organization phone number.

OrgSettings

OrgSettings is the organization cutomization settings.

FieldTypeLabelDescription
statement_webhookstringstatement_webhook is the organization webhook url for statement events.
match_webhookstringmatch_webhook is the organization webhook url for match events.

Profile

Profile is the user’s profile information.

FieldTypeLabelDescription
profile_idstringprofile_id is the user’s profile identifier.
namestringname is the user’s name.
langstringlang is the user’s language code (en, id, …).
countrystringcountry is the user’s country code (ID, US, SG, …).

ResourceInfo

ResourceInfo contains general web resource information.

FieldTypeLabelDescription
typeType
token_typestringtoken_type is the token type for use with oauth2.
tokenstringtoken is the authorization token.
base_urlstringbase_url is the base url for the resource.
auth_urlstringauth_url is the oauth2 authorization url.
token_urlstringtoken_url is the oauth2 token url.

Statement

Statement contains the summary of the financial transactions which have occurred over a given period on a bank account.

FieldTypeLabelDescription
account_numberstringaccount_number is the account number.
ending_balanceAmountending_balance is the ending balance for this period.
transactionsTransactionrepeatedtransactions is the list of transaction which occured over the specified period.
namestringname is the full name of the owner of the bank account. The format may change between banks.

Transaction

Transaction contains information for a specific transaction.

FieldTypeLabelDescription
transaction_idstringtransaction_id is the transaction id.
match_idstringmatch_id is the related match identifier (if any).
from_accountstringfrom_account is the account number of the debited account (if any).
account_idstringaccount_id is the account identifier of the credited account.
descriptorstringdescriptor is the bank statement descriptor.
dateTimestampdate is the transaction date.
amountAmountamount is the transaction amount.
typeTypetype is the type of bank transaction (DEBIT, CREDIT, TRANSFER)
pendingboolpending is a flag for transactions marked by the bank as pending.

TransactionMatch

FieldTypeLabelDescription
transaction_idstringtransaction_id is the id of the transaction record.
match_strengthfloatmatch_strength is the overall match strength estimate. Its range is [0, 1].
fieldsFieldsEntryrepeatedfields is a map of { field_name : stregth } for each entry in the matching breakdown.

FieldsEntry

FieldTypeLabelDescription
keystring
valuefloat

Type

Type is the account type enum.

NameDescription
UNKNOWN
CHECKING
SAVINGS

Type

Type is the account info type enum.

NameDescription
UNKNOWN
ACCOUNT
PROFILE
BANK
MSISDN

BankCode

BankCode is the bank code enum type.

NameDescription
UNKNOWN_BANK
MANDIRI
BCA
BNI
BRI
DUMMY_BANK
BDO
BPI
MANDIRI_PERSONAL
BCA_PERSONAL
BNI_PERSONAL
BRI_PERSONAL
BCA_ENTERPRISE
PERSONALUsed in endtoend testing.
BDO_PERSONAL
BPI_PERSONAL
KASIKORNBANK_PERSONAL

OkStatus

OkStatus is a the generic OK status enum.

NameDescription
UNKNOWN
ERROR
OK

Type

Type is the credential type enum.

NameDescription
UNKNOWN
MSISDN
EMAIL
TOKEN

Type

Type is the field type enum.

NameDescription
EMPTY
TEXT
RADIO
CHECK
SELECT
CAPTCHA
AMOUNT

Type

Type is the form type enum type.

NameDescription
UNKNOWN
ERROR
INPUT
COMPLETE

MatchStatus

MatchStatus is the match status enum type.

NameDescription
OPEN
READY
SETTLED
CANCELLED
EXPIRED

Type

Type is the resource type enum.

NameDescription
NONE
BRANKAS_V2
FIRESTORE_V1

Status

Status is an enum type defining whether an operation succeeded.

NameDescription
UNKNOWN
ERROR
SUCCESS

Type

NameDescription
UNKNOWN
DEBIT
CREDIT
TRANSFER

Package Namespace brankas.v2.auth

ConfirmationCodeRequest

ConfirmationCodeRequest contains the confirmation code reqest.

FieldTypeLabelDescription
invite_codestringinvite_code is the alphanumeric invite code.
emailstringemail is the confirmation email address.

LoginRequest

LoginRequest contains the login credentials.

FieldTypeLabelDescription
credentialCredentialcredential is the login credential.

LoginResponse

LoginResponse contains the JWT token.

FieldTypeLabelDescription
tokenstringtoken is the authentication token that can be used to access Brankas APIs.
resourcesResourcesEntryrepeatedresources is for internal use only. There are no compatibility promises for any resources field.

ResourcesEntry

FieldTypeLabelDescription
keystring
valuestring

RevokeRequest

RevokeRequet contains the revoke JWT request details.

FieldTypeLabelDescription
tokenstringtoken is the JWT to be revoked.

ValidateRequest

ValidateRequest contains the JWT token to be validated.

FieldTypeLabelDescription
tokenstringtoken is the jwt token.

ValidateResponse

ValidateResponse contains the validated JWT details.

FieldTypeLabelDescription
adminbooladmin is a flag to identify administrative priveledges within the organization.
org_idstringorg_id is the identifier of the access validated organization.

Package Namespace brankas.v2.bank

CreateCredentialRequest

CreateCredentialRequest holds the create bank credential request information.

FieldTypeLabelDescription
bank_codeBankCodebank_code is the bank code (MANDIRI, BCA, etc).
credentialCredentialcredential is the encrypted credential.
titlestringtitle is optional title to associate with the bank credential.

CreateCredentialResponse

CreateCredentialResponse holds the create bank credential response information.

FieldTypeLabelDescription
statusStatusstatus defines the result of the request.
credential_idstringcredential_id is the created credential id.

DeleteCredentialRequest

DeleteCredentialRequest holds the delete bank credential request information.

FieldTypeLabelDescription
credential_idstringcredential_id is the credential id to delete.

DeleteCredentialResponse

DeleteCredentialResponse holds the delete bank credential response information.

FieldTypeLabelDescription
statusStatusstatus defines the result of the request.

Package Namespace brankas.v2.disbursement

BankAccountInfo

BankAccountInfo contains information relating to a bank account

FieldTypeLabelDescription
bankBankCodebank is which bank the bank account is for
numberstringnumber is the bank account number
holder_namestringholder_name is the name of the owner of the bank account
typeBankAccountTypetype is the type of bank account

BankCredential

BankCredential is the credential used to access a banks API. Some banks will require multiple different BankCredential’s which can be seperated by the ‘type’ field.

FieldTypeLabelDescription
corporate_idstringcorporate_id is the banks unique id for the organization
identifierstringidentifier is the unique identifier for the credential
secretstringsecret is the secret for the credential
typeBankCredentialTypetype defines what bank this credential will be used for, and how the credential will be used with the bank

CreateBankCredentialRequest

CreateBankCredentialRequest is used to create a partial credential for a client on a bank

FieldTypeLabelDescription
bank_credentialBankCredentialbank_credential to create

CreateBankCredentialResponse

CreateBankCredentialResponse returns whether the bank credential was created successfully or not

FieldTypeLabelDescription
resultResultresult will return a success or error message for the response

CreateDisbursementsRequest

CreateDisbursementsRequest will initiate disbursement payments to merchants clients

FieldTypeLabelDescription
credentialsCredentialsEntryrepeatedAPI’
disbursementsDisbursementrepeateddisbursements is the disbursements to attempt to create

CredentialsEntry

FieldTypeLabelDescription
keystring
valueBankCredential

CreateDisbursementsResponse

CreateDisbursementsResponse returns the result of a disbursements transaction

FieldTypeLabelDescription
resultDisbursementResultrepeatedresult will return a success or error message for the response for each disbursement

Date

Date indicates a specific date

FieldTypeLabelDescription
yearint32Year of date. Must be from 1 to 9999, or 0 if specifying a date without a year.
monthint32Month of year. Must be from 1 to 12.
dayint32Day of month. Must be from 1 to 31 and valid for the year and month, or 0 if specifying a year/month where the day is not significant.

DeleteBankCredentialRequest

DeleteBankCredentialRequest will delete a partial credential for a client on a bank

FieldTypeLabelDescription
typestringtype for which bank_credential to delete

DeleteBankCredentialResponse

DeleteBankCredentialResponse returns whether the bank credential was deleted

FieldTypeLabelDescription
resultResultresult will return a success or error message for the response

Disbursement

Disbursement contains data for a disbursement

FieldTypeLabelDescription
corporate_idstringcorporate_id is the banks unique id for the organization
reference_idstringreference_id is a reference from the merchant to uniquely identify a disbursement transaction, this should be an idempotent value
typeTypetype is the type of disbursement being created
source_accountBankAccountInfosource_account is the account to send payment from
destination_accountBankAccountInfodestination_account is the account to send payment to
source_amountAmountamount.num’ should be in the lowest denomination for a currency. This will be generated by Brankas system.
destination_amountAmountamount.num’ should be in the lowest denomination for a currency
descriptionstringdescription is what the destination account will see for the disbursement transaction
exchange_ratestringexchange_rate is the foreign exchange rate (if applicable) of the disbursement. Set exchange_rate to be 1.0 if the source and destination currency are the same.
feesFeesfees are the associated fees for the disbursement
disbursement_idstringdisbursement_id is an id brankas uniquely generates for this disbursement
externalExternalexternal is a field for all the information returned by the bank’s api regarding a disbursement
statusStatusstatus defines the result of the request.
createdTimestampcreated is a timestamp indicating when the disbursement was created
updatedTimestampupdated is a timestamp indicating when the disbursement was last updated
processedTimestampprocessed is a timestamp indicating when the disbursement was sent to the bank, this will be used to determine what disbursements should be returned from the RetrieveDisbursements request

DisbursementResult

DisbursementResult is a disbursement plus it’s response from the bank, the disbursement was created with

FieldTypeLabelDescription
disbursementDisbursementdisbursement is the disbursement that was created with the bank
resultResultresult is the repsonse from the bank when trying to create the disbursement

Error

Error is the message if the result is not successful.

FieldTypeLabelDescription
codestring
messagestring

External

External is the associated information returned by the bank’s API that can be used to identify a disbursement or error in disbursement in their system

FieldTypeLabelDescription
reference_idstringreference_id is the reference id returned from the bank’s api to uniquely identify a disbursement in their system.
statusstringstatus is the transfer status returned from the bank’s api
errorErrorrepeatederror is the error information returned by the bank’s api

ExternalStatusUpdatesRequest

ExternalStatusUpdateRequest will call the external bank api for status updates about created disbursements. This request will initiate a background task to call the external banks apis.

FieldTypeLabelDescription
credentialsCredentialsEntryrepeatedAPI’
disbursement_idsstringrepeateddisbursement_ids are the disbursements to get status updates for

CredentialsEntry

FieldTypeLabelDescription
keystring
valueBankCredential

ExternalStatusUpdatesResponse

ExternalStatusUpdatesResponse will return whether the disbursement is valid and the stored disbursement data

FieldTypeLabelDescription
resultDisbursementResultrepeatedresult will return a success or error message for the response for each disbursement

Fee

Fee is the associated data for a particular fee

FieldTypeLabelDescription
namestringname is the name of the fee
amountstringamount is the amount of the fee
curstringcur is the currency of the fee

Fees

Fees are a list of fees that are charged for a disbursement

FieldTypeLabelDescription
feeFeerepeated

ProcessFutureDisbursementsRequest

ProcessFutureDisbursementsRequest will start processing stored disbursements

FieldTypeLabelDescription
credentialsCredentialsEntryrepeatedAPI’
disbursement_idsstringrepeateddisbursement_ids are a list of future disbursements that should be processed now

CredentialsEntry

FieldTypeLabelDescription
keystring
valueBankCredential

ProcessFutureDisbursementsResponse

ProcessFutureDisbursementsResponse will return the results of processing stored disbursements

FieldTypeLabelDescription
resultDisbursementResultrepeatedresult will return a success or error message for the response for each disbursement

Result

Result is a response result with whether the response is a success or what the error was

FieldTypeLabelDescription
successbool
errorErrorrepeated

RetrieveBankCredentialsResponse

RetrieveBankCredentialsResponse returns all the bank credentials for a client

FieldTypeLabelDescription
resultResultresult will return a success or error message for the response
bank_credentialsBankCredentialrepeatedbank_credentials are all the stored BankCredential’s we have for a client

RetrieveDisbursementsRequest

RetrieveDisbursementsRequest is used to get a list of disbursements that match the list of disbursement ids, and that fall between the startdate and enddate. If startdate or enddate isn’t specified, all disbursements matching the disbursement ids are returned. RetrieveDisbursementsRequest can also be filtered using page, bank and status.

FieldTypeLabelDescription
disbursement_idsstringrepeateddisbursement_ids are a list of disbursement ids to return disbursements for
start_dateDatestart_date is the start date of the range inclusive of the date
end_dateDateend_date is the end date of the range inclusive of the date
pageint32page is the page number for showing the disbursements. When page is 0, then all disbursement requests are returned.
page_sizeint32page_size is the number of elements returned in a page.
bankBankCodebank is the filter to retrieve disbursements by certain banks.
statusStatusstatus is the filter to retrieve disbursements by the current status.

RetrieveDisbursementsResponse

RetrieveDisbursementsResponse returns a list of disbursements that fall inside the date range

FieldTypeLabelDescription
resultResultresult will return a success or error message for the response
disbursementsDisbursementrepeateddisbursements are the disbursements that fall within the specified date range

UpdateBankCredentialRequest

UpdateBankCredentialRequest is used to update a partial credential for a client on a bank

FieldTypeLabelDescription
typestringtype to update the bank_credential for
bank_credentialBankCredentialbank_credential data to update

UpdateBankCredentialResponse

UpdateBankCredentialResponse returns whether the bank credential were updated

FieldTypeLabelDescription
resultResultresult will return a success or error message for the response

BankAccountType

BankAccountType indicates which account to use

NameDescription
ACCOUNT
CHECKINGS
SAVINGS

BankCode

BankCode indicates which bank to use; these should be a list of banks that we are currently integrated with This is the updated list of banks per January 2018

NameDescription
UNKNOWN_BANK
MANDIRI
BCA
BNI
BRI
DUMMY_BANK
BDO
ACEHBPI = 7;
AGRIS
AGRONIAGA
AMAR_INDONESIA
ANDARA
ANTARDAERAH
ANZ_INDONESIA
ARTHAGRAHA
ARTOS
BANGKOK_INDONESIA
BARCLAYS_INDONESIA
BCA_SYARIAH
BI
BISNIS_INTERNASIONAL
BNI_SYARIAH
BRI_SYARIAH
BTPN
BTPN_SYARIAH
BUKOPIN
BUKOPIN_SYARIAH
BUMI_ARTA
CAPITAL_INDONESIA
CENTRATAMA_NASIONAL
CTBC_INDONESIA
DANAMON
DANPAC
DINAR_INDONESIA
DKI
DKI_SYARIAH
EKONOMI_RAHARJA
FAMA
GANESHA
HARDA
ICBC_INDONESIA
INA_PERDANA
INDEX_SELINDO
JABAR
JABAR_SYARIAH
JASA_JAKARTA
JATIM
JATIM_SYARIAH
KEB_HANA
KESEJAHTERAAN_EKONOMI
MANDIRI_SYARIAH
MASPION_INDONESIA
MAYAPADA
MAYBANK
INDONESIA
MAYORA
MEGA
MEGA_SYARIAH
MESTIKA_DHARMA
METRO_EXPRESS
MITRANIAGA
MIZUHO_INDONESIA
MNC_INTERNATIONAL
MUAMALAT_INDONESIA
MULTI_ARTA
MUTIARA
NUSANTARA_PARAHYANGAN
OCBC_NISP
SYARIAH
AMERICA_INDONESIA
CHINA_INDONESIA
INDIA_INDONESIA
PIKKO
PRIMA_MASTER
PUNDI_INDONESIA
QNB_INDONESIA
ROYAL_INDONESIA
SAHABAT_SAMPOERNA
SBI_INDONESIA
SINAR_HARAPAN
SINARMAS
BTN
BTN_SYARIAH
UOB_INDONESIA
VICTORIA
VICTORIA_SYARIAH
WINDU_KENTJANA
INDONESIA
YUDHA_BAKTI
INDONESIA
SYARIAH
BPD_BALI
BPD_BENGKULU
BPD_JAMBI
TENGAH
BARAT
BARAT_SYARIAH
TENGAH
TIMUR
TIMUR_SYARIAH
SELATAN
SELATAN_SYARIAH
BPD_LAMPUNG
BPD_MALUKU
BPD_NTB
BPD_NTT
BPD_PAPUA
KEPRI
SELATAN_BARAT
TENGAH
TENGGARA
UTARA
BARAT
BARAT_SYARIAH
SELATAN
SELATAN_BABEL
SELATAN_SYARIAH
SELATAN_UUS
UTARA
UTARA_SYARIAH
BPD_YOGYAKARTA
SYARIAH
CIMB_NIAGA
SYARIAH
CITIBANK_INDONESIA
COMMONWEALTH_INDONESIA
DANAMON_SYARIAH
DBS_INDONESIA
INDONESIA
NOBU_INDONESIA
PANIN
PANIN_SYARIAH
RABO_INDONESIA
RESONA_PERDANIA
INDONESIA
INDONESIA
TOKYO_INDONESIA
INDONESIA
PERMATA
PERMATA_SYARIAH
SINARMAS_SYARIAH
MANDIRI_TASPEN
BANTEN
BEI
CHASE_INDONESIA
CCB_INDONESIA
JTRUST_INDONESIA
TRANSFERWISE

BankCredentialType

BankCredentialType is used to determine the type of ‘BankCredential’, there should be an option for every type of banks api credentials. eg: BCA require a ‘CLIENT’ and ‘API’ credential, but BNI only require a ‘CLIENT’ credential. The format for this should be ‘’.

NameDescription
CREDENTIAL_TYPE
CLIENT
BCA_CLIENT
BCA_API
BNI_CLIENT
TRANSFERWISE_API
PERMATA_API
PERMATA_CLIENT
BDO_CLIENT

Type

NameDescription
UNKNOWN_TYPE
ON_DEMANDon demand will process the disbursement straight away
FUTUREfuture will store the disbursement for processing at a later time

Status

Status that a disbursement transaction could be in

NameDescription
UNKNOWN_STATUS
CREATED
PENDING
SUCCESS
FAILED

Package Namespace brankas.v2.match

CancelMatchRequest

CancelMatchRequest holds the cancel match request information.

FieldTypeLabelDescription
match_idstringmatch_id is the created match id.

CancelMatchResponse

CancelMatchResponse holds the cancel match response information.

FieldTypeLabelDescription
statusStatusstatus defines the result of the request.

CreateMatchRequest

CreateMatchRequest holds the create match request information.

FieldTypeLabelDescription
fromAccountDescfrom is the from account information.
account_idstringaccount_id is the account identifier for the account to expect the transaction.
amountAmountamount is the payment amount.
memostringmemo is the user supplied short transaction memo.
expiryTimestampexpiry is the deadline for matching a transaction for payment.
notestringnote is an optional user-defined field.

CreateMatchResponse

CreateMatchResponse holde the create match response information.

FieldTypeLabelDescription
statusStatusstatus defines the result of the request.
match_idstringmatch_id is the unique match identifier.
short_idstringshort_id is the short match id.

RetrieveMatchRequest

RetrieveMatchRequest holds the get match request information.

FieldTypeLabelDescription
match_idstringmatch_id is the unique match identifier.

RetrieveMatchResponse

RetrieveMatchResponse holds the get match response information.

FieldTypeLabelDescription
matchMatchmatch is the returned match information.

RetrieveMatchesRequest

RetrieveMatchesRequest holds the list of get matches request information.

FieldTypeLabelDescription
idsRetrieveMatchRequestrepeated

RetrieveMatchesResponse

RetrieveMatchesResponse holds the list of get matches response information.

FieldTypeLabelDescription
matchesMatchrepeated

UpdateMatchRequest

UpdateMatchRequest holds the update match request information.

FieldTypeLabelDescription
match_idstringmatch_id is the unique match identifier.
amountAmountamount is the payment amount.
expiryTimestampexpiry is the deadline for matching a transaction for payment.
notestringnote is an optional user-defined field.

UpdateMatchResponse

UpdateMatchResponse holde the update match response information.

FieldTypeLabelDescription
statusStatusstatus defines the result of the request.

Package Namespace brankas.v2.org

CreateOrgRequest

CreateOrgRequest holds the information to register an organization.

FieldTypeLabelDescription
user_agentstringuser_agent is the client user agent.
orgOrgProfileorg is the organization information.

CreateOrgResponse

CreateOrgResponse holds the response from registering an organization.

FieldTypeLabelDescription
statusOrgStatusstatus defines the result of the request.
org_idstringextra contains additional information if the registration failed.
tokenstringtoken contains an authorized token that allows registration of the org owner via orguser service.

CreateUserRequest

CreateUserRequest holds the information to register an organization user.

FieldTypeLabelDescription
user_agentstringuser_agent is the client user agent.
credentialCredentialcredential is the initial credential to assign with the profile.
profileProfileprofile is the user’s initial profile information.

CreateUserResponse

CreateUserResponse holds the response from registering an organization user.

FieldTypeLabelDescription
statusProfileStatusstatus defines the result of the request.
extrastringextra contains additional information if the registration failed.
user_idstringuser_id is the user’s unique identifier.
tokenstringtoken is authorized to modify the orguser with UpdateUser.

RetrieveOrgRequest

RetrieveOrgRequest holds the get org request search parameters.

FieldTypeLabelDescription
org_idstringorg_id is the organization identifier

RetrieveOrgResponse

RetrieveOrgResponse holds the org information.

FieldTypeLabelDescription
orgOrgProfileorg is the organization information.
settingsOrgSettingssettings is the organization settings.

RetrieveUserRequest

RetrieveUserRequest holds the parameters to retrieve an organization user.

FieldTypeLabelDescription
search_fieldsProfilesearch_fields holds search parameters.

RetrieveUserResponse

RetrieveUserResponse holds the matching organization users.

FieldTypeLabelDescription
profilesProfilerepeatedprofiles is the list of profiles.

UpdateOrgRequest

UpdateOrgRequest holds the update organization information.

FieldTypeLabelDescription
org_idstringorg_id is the organization unique identifier.
orgOrgProfileorg is the organization information.
settingsOrgSettingssettings is the organization settings.

UpdateOrgResponse

UpdateOrgResponse holds the update organization information.

FieldTypeLabelDescription
statusOrgStatusstatus defines the result of the request.

UpdateUserRequest

UpdateUserRequest holds the information to update an existing organization user.

FieldTypeLabelDescription
user_idstringuser_id is the user’s unique identifier.
profileProfileprofile is the updated profile information.

UpdateUserResponse

UpdateUserResponse holds the response from updating an organization user.

FieldTypeLabelDescription
statusProfileStatusstatus defines the result of the request.

OrgStatus

OrgStatus is the organization status enum.

NameDescription
REGISTERED
ENABLED
SUSPENDED
DISABLED

ProfileStatus

ProfileStatus is the profile status enum.

NameDescription
UNKNOWN
FAILURE
SUCCESS
INTERNAL_ERROR
UPGRADE_REQUIRED
SUPPORTED
CREDENTIAL_MISSING
CREDENTIAL_INVALID
CREDENTIAL_DISABLED
USE
PROFILE_MISSING
PROFILE_INVALID
NAME
LANG
COUNTRY
MSISDN
PROFILE_DISABLED

Package Namespace brankas.v2.servicetoken

CreateServiceTokenRequest

CreateServiceTokenRequest holds the service token creation information

FieldTypeLabelDescription
expiryTimestampexpiry is the expiry timestamp

CreateServiceTokenResponse

CreateServiceTokenResponse holds the response from creating a service token.

FieldTypeLabelDescription
token_idstringtoken_id is the id of the token created.
credentialCredentialcredential contains the created token.

DeleteServiceTokenRequest

DeleteServiceTokenRequest holds a request to delete a service token.

FieldTypeLabelDescription
token_idstringtoken_id is the id of the token to be deleted.

RetrieveServiceTokensRequest

RetrieveServiceTokensRequest holds the request for the list of service tokens associated with an org. TODO: add scopes for filtering

RetrieveServiceTokensResponse

RetrieveServiceTokensResponse holds the list of tokens associated with an org.

FieldTypeLabelDescription
token_listTokenMetadatarepeatedtoken_list contains the metadata of the tokens associated with the org.

TokenMetadata

TokenMetadata holds the metadata associated with a service token.

FieldTypeLabelDescription
token_idstringtoken_id is the token id.
createTimestampcreate is the creation timestamp of the token.
expiryTimestampexpiry is the expiry timestamp of the token.

Package Namespace brankas.v2.statement

RetrieveStatementsRequest

RetrieveStatementRequest holds the get request information

FieldTypeLabelDescription
bank_codeBankCodebank_code is the bank code (MANDIRI, BCA, etc).
credentialCredentialcredential is the internet banking account credential.
period_daysint32period_days is the filter to search transactions that occurred over a given period. note: the behaviour of the search is depends upon each bank site.

RetrieveStatementsResponse

RetrieveStatementRespones hold the get statement response information.

FieldTypeLabelDescription
statement_idstringstatement_id is the unique identifier for the statement request.
statusStatementStatusstatus is the statement request status.
site_responsestringsite_response is an optional text response from the bank website.

StatementsList

StatementsList holds the statements fetched from the bank.

Sent to the organization’s registered webhook .

FieldTypeLabelDescription
statement_idstringstatement_id is the unique identifier for the statement request.
statusStatementStatusstatus is the statement request status.
errorstringerror is the error message.
statementsStatementrepeatedstatements is a summary of financial transactions which have occurred over a given period on a specified bank credentials.

StatementStatus

StatementStatus is the status of a statment request.

NameDescription
RECEIVED
PENDING
TFA_AWAIT
LOGIN_ERROR

Package Namespace brankas.v2.tfa

SendTFARequest

SendTFARequest holds the two-factor authentication request.

FieldTypeLabelDescription
purposeTFAPurposepurpose defines what this TFA token should be used for.
purpose_idstringid will be a bankcredential_id.
tokenstringtoken is the actual TFA token string.

SendTFAResponse

SendTFAResponse holds the two-factor authentication response.

FieldTypeLabelDescription
statusStatusstatus defines the result of the request.
auth_statusStatusauth_status defines the result of the request.
status_msgstringstatus_msg is the bank status message.

Status

NameDescription
UNKNOWN
INCOMPLETE
COMPLETE

TFAPurpose

NameDescription
UnknownPurpose
BankCredentialLogin
FundTransferAuthentication

Package Namespace brankas.v2.transfer

CreateTransferRequest

CreateTransferRequest holds the create transfer request information.

FieldTypeLabelDescription
credsCredentialcreds is the user internet banking account credentials.
fromAccountDescfrom is the source account information.
toAccountDescto is destination account information.
amountAmountamount is the transfer amount.
memostringmemo is the user supplied short transfer memo line.

CreateTransferResponse

CreateTransferResponse holds the create transfer response information.

FieldTypeLabelDescription
statusStatusstatus defines the result of the create transfer request.
transfer_idstringtransfer_id is brankas internal transfer id.
site_responsestringsite_response is an optional text response from bank website.

RetrieveTransfersRequest

RetrieveTransfersRequest is used to get the transfers associated with an organization, with optional filters.

FieldTypeLabelDescription
transfer_idsstringrepeatedtransfer_ids is a list of transfers to return information for.

if it is provided, parameters other than order_by will be ignored. | | page | int32 | | page is the page number for showing the transfers.

when page <= 0, the first page will be returned. | | pagesize | int32 | | pagesize is the number of transfers returned in a page.

when pagesize <= 0, the default page size of 15 will be used. | | orderby | OrderBy | | order_by defines the order in which the results are returned.

if none is specified, by default it will be by date descending. |

RetrieveTransfersResponse

RetrieveTransfersResponse holds the transfers that match the filters of a request.

FieldTypeLabelDescription
transfersTransferrepeatedtransfers are the transfers that match the filters of a request.
next_pageint32next_page is the number of the next page that can be returned.

if it is 0, there are no more pages available. |

Transfer

FieldTypeLabelDescription
statusStatusstatus indicates the current status of the transfer.
fromAccountDescfrom is the source account information.

make sure the bank code on this field is set, this bank will be used to initiate the transfer. | | to | AccountDesc | | to is destination account information. | | amount | Amount | | amount is the transfer amount. | | usermemo | string | | usermemo is the user supplied memo line (e.g. RRN). | | bankmemo | string | | bankmemo is the bank-supplied memo line (e.g. confirmation number) | | created | Timestamp | | created is the timestamp when the transfer was initiated | | completed | Timestamp | | completed is the timestamp when the transfer was fully processed. |

OrderBy

NameDescription
DATE_DESCENDING
DATE_ASCENDING

Status

Status is the possible statuses for a transfer.

NameDescription
PENDING
AWAITING_TFA
SUCCESS
ERROR
LOGIN_ERROR

Ready to get started? Get in touch with our sales team today!

Subscribe to our newsletterLeave your name and email below to recieve updates about Brankas. We value your privacy and will never share your details.

Try Brankas today!Leave your name and email below and we will contact shortly to demonstrate how Brankas can help your organization.

We'll get in contact with you soon

Thank You

We'll get in contact with you soon!