Welcome to the GoEscrow Partner API Documentation for E-Commerce Retailers and Marketplace operators.
This documentation aims to provide all the information you need to work with our API.
You may find the partner application, additional support documentation and whitepaper for the GoEscrow Partner API here.
State-changing requests can be safely retried without performing the operation twice by sending an Idempotency-Key header. We strongly recommend using it on every money-movement request, so that a network timeout or a retry never results in a duplicate transaction.
How to use it
Idempotency-Key request header.Idempotent-Replayed: true header.Status codes you may receive
409 Conflict — a request with the same key is still being processed. Wait a moment and retry.422 Unprocessable Entity — the key was already used with a different request body. Use a new key for a different operation.Notes
2xx) responses are remembered. If a request fails, the key is released so you can safely retry it with the same key.Idempotency keys are honoured on: create transaction, settle transaction, request cancellation, PayTo payment, and create dispute.
To authenticate requests, include a X-API-Key header with the value "{YOUR_AUTH_KEY}".
All authenticated endpoints are marked with a requires authentication badge in the documentation below.
To connect via API authentication is required.
Contact your GoEscrow account manager for a one time use URL token to create your X-API-Key. Send that specific X-API-Key in a custom header (replacing '123456789abcdef') as follows:
POST /v1/transactions HTTP/1.1
Host: partners.goescrow.net
X-API-Key: 123456789abcdef
Content-Type: application/json
Accept: application/json
curl --request GET \
--get "https://partners.staging.goescrow.net/api/v1/healthcheck" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" Manage Companies
Looks up an existing company by Australian Business Number. Access is limited to companies represented by a user belonging to the authenticated partner, unless using an internal API key.
The Australian Business Number. Formatting spaces are accepted.
curl --request GET \
--get "https://partners.staging.goescrow.net/api/v1/companies/lookup?abn=40+650+703+736" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" {
"data": {
"id": "9d2e5c8a-1234-5678-9abc-def012345678",
"reference": "ABC123",
"name": "Acme Corp Pty Ltd",
"abn": "40650703736",
"acn": "004085616",
"kyb_verified": true,
"aml_verified": true,
"aml_verified_at": "2026-06-25T00:00:00.000000Z",
"bank_verified": true,
"abr_status": "Active",
"representatives": [
{
"id": "9d2e5c8a-1234-5678-9abc-def012345679",
"reference": "ABC123",
"name": "Jane Doe"
}
]
}
}
Creates a new company and attaches one or more existing users as its representatives.
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/companies" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"Acme Corp Pty Ltd\",
\"abn\": \"40650703736\",
\"acn\": \"004085616\",
\"email\": \"info@acmecorp.com.au\",
\"phone\": \"+61298765432\",
\"website\": \"https:\\/\\/www.acmecorp.com.au\",
\"type\": \"Proprietary Limited\",
\"majority_owned_by_another_australian_company\": false,
\"majority_owned_by_overseas_person_or_company\": false,
\"majority_owned_by_listed_australian_company\": false,
\"acting_as_trustee_for_a_trust\": false,
\"representatives\": [
\"9d2e5c8a-1234-5678-9abc-def012345678\"
],
\"address\": {
\"unit_number\": \"3\",
\"street_number\": \"20\",
\"street\": \"Company Street\",
\"suburb\": \"Melbourne\",
\"state\": \"VIC\",
\"postcode\": \"3000\",
\"country\": \"Australia\"
}
}"
{
"data": {
"id": "comp_123",
"reference": "ABC123",
"name": "Acme Corp Pty Ltd",
"abn": "40650703736",
"acn": "004085616",
"kyb_verified": true,
"aml_verified": true,
"aml_verified_at": "2026-06-25T00:00:00.000000Z",
"bank_verified": true,
"abr_status": "Active",
"representatives": [
{
"id": "9d2e5c8a-1234-5678-9abc-def012345678",
"reference": "ABC123",
"name": "Jane Doe"
}
]
}
}
Updates an existing company. Only provided fields will be updated. ABN must be omitted, even when unchanged; create a new company for a different ABN.
The company UUID (36-character internal identifier)
curl --request PUT \
"https://partners.staging.goescrow.net/api/v1/companies/1" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"Acme Corp Pty Ltd\",
\"acn\": \"004085616\",
\"email\": \"info@acmecorp.com.au\",
\"phone\": \"+61298765432\",
\"website\": \"https:\\/\\/www.acmecorp.com.au\",
\"type\": \"Proprietary Limited\",
\"majority_owned_by_another_australian_company\": false,
\"majority_owned_by_overseas_person_or_company\": false,
\"majority_owned_by_listed_australian_company\": false,
\"acting_as_trustee_for_a_trust\": false,
\"add_representatives\": [
\"9d2e5c8a-1234-5678-9abc-def012345678\"
],
\"remove_representatives\": [
\"9d2e5c8a-1234-5678-9abc-def012345679\"
],
\"address\": {
\"unit_number\": \"3\",
\"street_number\": \"20\",
\"street\": \"Company Street\",
\"suburb\": \"Melbourne\",
\"state\": \"VIC\",
\"postcode\": \"3000\",
\"country\": \"Australia\"
}
}"
{
"data": {
"id": "comp_123",
"reference": "ABC123",
"name": "Acme Corp Pty Ltd",
"abn": "40650703736",
"acn": "004085616",
"kyb_verified": true,
"aml_verified": true,
"aml_verified_at": "2026-06-25T00:00:00.000000Z",
"bank_verified": true,
"abr_status": "Active",
"representatives": [
{
"id": "9d2e5c8a-1234-5678-9abc-def012345678",
"reference": "ABC123",
"name": "Jane Doe"
}
]
}
}
Uploads one or more files to a company filing cabinet. The authenticated partner must represent the company.
The company UUID (36-character internal identifier)
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/companies/9d2e5c8a-1234-5678-9abc-def012345678/files" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: multipart/form-data" \
--header "Accept: application/json" \
--form "files[]=@/tmp/phpm2l9dna0pvk41egCpca" {
"data": [
{
"id": "9d2e5c8a-1234-5678-9abc-def012345678",
"file": "a1b2c3d4/document.pdf",
"filename": "document.pdf",
"created_at": "2024-01-15T10:30:00Z"
}
]
}
Manage Users
Creates a new user. Email and phone must be unique. The user will be automatically associated with the authenticated partner. If the authenticated Partner has welcome emails enabled, newly created API users receive a GoEscrow Welcome By Partner email with a 24-hour, single-use password setup link.
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/users" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"first_name\": \"John\",
\"last_name\": \"Doe\",
\"email\": \"john.doe@example.com\",
\"phone\": \"+61412345678\",
\"birth_date\": \"1990-01-15\",
\"initiate_mobile_verification_flow\": \"yes\",
\"address\": {
\"unit_number\": \"10B\",
\"street_number\": \"123\",
\"street\": \"Smith St\",
\"suburb\": \"Sydney\",
\"state\": \"NSW\",
\"postcode\": \"2000\"
}
}"
{
"data": {
"id": "9d2e5c8a-1234-5678-9abc-def012345678",
"reference": "ABC123",
"first_name": "John",
"last_name": "Doe",
"email": "john.doe@example.com",
"phone": "+61412345678",
"birth_date": "1990-01-15",
"kyc_verified": false,
"aml_verified": false,
"aml_verified_at": null,
"email_verified": false,
"mobile_verified": false,
"mobilekyc_verified": false,
"bank_verified": false,
"suspended": false,
"address": {
"unit_number": "10B",
"street_number": "123",
"street": "Smith St",
"suburb": "Sydney",
"state": "NSW",
"postcode": "2000",
"country": "Australia"
}
}
}
Updates an existing user for the authenticated partner. Email and phone must remain unique.
The user UUID (36-character internal identifier)
curl --request PUT \
"https://partners.staging.goescrow.net/api/v1/users/1" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"first_name\": \"John\",
\"last_name\": \"Doe\",
\"email\": \"john.doe@example.com\",
\"phone\": \"+61412345678\",
\"birth_date\": \"1990-01-15\",
\"address\": {
\"unit_number\": \"10B\",
\"street_number\": \"123\",
\"street\": \"Smith St\",
\"suburb\": \"Sydney\",
\"state\": \"NSW\",
\"postcode\": \"2000\"
}
}"
{
"data": {
"id": "9d2e5c8a-1234-5678-9abc-def012345678",
"reference": "ABC123",
"first_name": "John",
"last_name": "Doe",
"email": "john.doe@example.com",
"phone": "+61412345678",
"birth_date": "1990-01-15",
"kyc_verified": false,
"aml_verified": false,
"aml_verified_at": null,
"email_verified": false,
"mobile_verified": false,
"mobilekyc_verified": false,
"bank_verified": false,
"suspended": false,
"address": {
"unit_number": "10B",
"street_number": "123",
"street": "Smith St",
"suburb": "Sydney",
"state": "NSW",
"postcode": "2000",
"country": "Australia"
}
}
}
Look up an existing user by email, phone, or GoEscrow reference. Company reference matches return only the company name and reference. Exactly one parameter must be provided.
The user's email address. Supply exactly one of email, phone, or reference.
The user's phone number. Supply exactly one of email, phone, or reference. Accepts 0412345678, +61412345678, or 61412345678.
A user or company GoEscrow reference. Supply exactly one of email, phone, or reference.
curl --request GET \
--get "https://partners.staging.goescrow.net/api/v1/users/lookup?email=john.doe%40example.com&phone=%2B61412345678&reference=ABC123" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" {
"data": {
"id": "9d2e5c8a-1234-5678-9abc-def012345678",
"reference": "ABC123",
"first_name": "John",
"last_name": "Doe",
"email": "john.doe@example.com",
"phone": "+61412345678",
"birth_date": "1990-01-15",
"kyc_verified": true,
"aml_verified": true,
"aml_verified_at": "2026-06-25T00:00:00.000000Z",
"email_verified": true,
"mobile_verified": true,
"mobilekyc_verified": true,
"bank_verified": true,
"suspended": false,
"address": {
"unit_number": "1",
"street_number": "123",
"street": "Main Street",
"suburb": "Sydney",
"state": "NSW",
"postcode": "2000",
"country": "Australia"
}
}
}
Sends a verification code via SMS to the user's registered phone number. The code will be valid for a limited time.
The user UUID (36-character internal identifier)
curl --request GET \
--get "https://partners.staging.goescrow.net/api/v1/users/9d2e5c8a-1234-5678-9abc-def012345678/verify-mobile" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" [Empty response]
Verifies the mobile phone number using the code sent via SMS. Upon successful verification, the user's phone will be marked as verified.
The user UUID (36-character internal identifier)
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/users/9d2e5c8a-1234-5678-9abc-def012345678/verify-mobile" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"code\": \"123456\"
}"
[Empty response]
Sends a verification code via email to the user's registered email address. The code will be valid for a limited time.
The user UUID (36-character internal identifier)
curl --request GET \
--get "https://partners.staging.goescrow.net/api/v1/users/9d2e5c8a-1234-5678-9abc-def012345678/verify-email" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" [Empty response]
Verifies the email address using the code sent via email. Upon successful verification, the user's email will be marked as verified.
The user UUID (36-character internal identifier)
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/users/9d2e5c8a-1234-5678-9abc-def012345678/verify-email" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"code\": \"123456\"
}"
[Empty response]
Generates and returns a PDF bank statement for the specified user. The statement includes transaction history and account details.
The user UUID (36-character internal identifier)
curl --request GET \
--get "https://partners.staging.goescrow.net/api/v1/users/9d2e5c8a-1234-5678-9abc-def012345678/bank-statement" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" []
Uploads one or more files to a user filing cabinet. The authenticated partner must own the user.
The user UUID (36-character internal identifier)
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/users/9d2e5c8a-1234-5678-9abc-def012345678/files" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: multipart/form-data" \
--header "Accept: application/json" \
--form "files[]=@/tmp/phpi471fdopvaa75JePigk" {
"data": [
{
"id": "9d2e5c8a-1234-5678-9abc-def012345678",
"file": "a1b2c3d4/document.pdf",
"filename": "document.pdf",
"created_at": "2024-01-15T10:30:00Z"
}
]
}
Generates a 24-hour password reset link for the user.
The user UUID (36-character internal identifier)
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/users/9d2e5c8a-1234-5678-9abc-def012345678/password-reset-link" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"send_email\": true
}"
{
"reset_url": "https://app.goescrow.com.au/auth/forgot-password/abc123",
"expires_in": "24 hours"
}
Create and manage transaction disputes
Creates a dispute for a transaction. This will mark the transaction as disputed and create a compliance note for the CS team to review.
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/disputes" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Idempotency-Key: 6f3a8e1c-9b2d-4f5a-8c1e-2a7b9d0e1f23" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"requester_id\": \"9d2e5c8a-1234-5678-9abc-def012345678\",
\"requester_role\": \"buyer\",
\"transaction_id\": \"9d2e5c8a-1234-5678-9abc-def012345678\",
\"request_type\": \"pause\",
\"issue_description\": \"The goods were not delivered as described.\"
}"
{
"message": "Dispute created successfully.",
"dispute_reference": "DISP-2024-001234",
"transaction_id": "9d2e5c8a-1234-5678-9abc-def012345678",
"status": "disputed"
}
Manage Transaction Cancellations
Initiates a cancellation request for a transaction. Pending transactions are cancelled immediately. Accepted funded transactions require requester 2FA before the request is created. Accepted unfunded transactions move to cancellation_requested for counterparty response.
The transaction UUID (36-character internal identifier)
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/transactions/9d2e5c8a-1234-5678-9abc-def012345678/cancellation-request" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Idempotency-Key: 6f3a8e1c-9b2d-4f5a-8c1e-2a7b9d0e1f23" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"requester_id\": \"9d2e5c8a-1234-5678-9abc-def012345678\"
}"
{
"message": "Cancellation requested. 2FA verification required. Codes sent to requester's email and phone.",
"requires_2fa": true,
"transaction_id": "9d2e5c8a-1234-5678-9abc-def012345678",
"status": "accepted"
}
Verifies requester 2FA for a funded accepted transaction and creates the cancellation request for counterparty response.
The transaction UUID (36-character internal identifier)
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/transactions/9d2e5c8a-1234-5678-9abc-def012345678/verify-cancellation" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"requester_id\": \"9d2e5c8a-1234-5678-9abc-def012345678\",
\"email_code\": \"123456\",
\"phone_code\": \"654321\"
}"
{
"message": "Cancellation requested. Waiting for counterparty response.",
"requires_2fa": false,
"transaction_id": "9d2e5c8a-1234-5678-9abc-def012345678",
"status": "cancellation_requested"
}
Accepts a pending cancellation request. Funded transactions require counterparty 2FA before cancellation is completed.
The transaction UUID (36-character internal identifier)
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/transactions/9d2e5c8a-1234-5678-9abc-def012345678/cancellation-accept" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"accepter_id\": \"9d2e5c8a-1234-5678-9abc-def012345678\"
}"
{
"message": "Cancellation acceptance requires 2FA verification. Codes sent to accepter's email and phone.",
"requires_2fa": true,
"transaction_id": "9d2e5c8a-1234-5678-9abc-def012345678",
"status": "cancellation_requested"
}
Verifies counterparty 2FA and completes cancellation for a funded transaction.
The transaction UUID (36-character internal identifier)
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/transactions/9d2e5c8a-1234-5678-9abc-def012345678/verify-cancellation-accept" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"accepter_id\": \"9d2e5c8a-1234-5678-9abc-def012345678\",
\"email_code\": \"123456\",
\"phone_code\": \"654321\"
}"
{
"message": "Cancellation accepted. Transaction cancelled successfully.",
"requires_2fa": false,
"transaction_id": "9d2e5c8a-1234-5678-9abc-def012345678",
"status": "canceled"
}
Denies a pending cancellation request and reverts the transaction to accepted unless the timed-escrow safety check applies.
The transaction UUID (36-character internal identifier)
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/transactions/9d2e5c8a-1234-5678-9abc-def012345678/cancellation-deny" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"denier_id\": \"9d2e5c8a-1234-5678-9abc-def012345678\"
}"
{
"message": "Cancellation denied. Transaction reverted to active status.",
"transaction_id": "9d2e5c8a-1234-5678-9abc-def012345678",
"status": "accepted"
}
Manage Transactions
Creates a new escrow transaction with disbursements. Partner API transactions are auto-accepted (skip pending status).
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/transactions" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Idempotency-Key: 6f3a8e1c-9b2d-4f5a-8c1e-2a7b9d0e1f23" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"action\": \"buy\",
\"type\": \"anytime_escrow\",
\"amount_type\": \"escrow\",
\"other_user\": \"9d2e5c8a-1234-5678-9abc-def012345678\",
\"other_company_id\": \"9d2e5c8a-1234-5678-9abc-def012345678\",
\"sub_type\": \"marketplace\",
\"user_id\": \"9d2e5c8a-1234-5678-9abc-def012345678\",
\"company_id\": \"9d2e5c8a-1234-5678-9abc-def012345678\",
\"marketplace_operator_id\": \"9d2e5c8a-1234-5678-9abc-def012345678\",
\"release_at\": \"2024-12-31T23:59:59Z\",
\"details\": \"Dental Surgery\",
\"amount\": 15000050,
\"disbursements\": [
\"eligendi\"
]
}"
{
"data": {
"id": "9d2e5c8a-1234-5678-9abc-def012345678",
"reference": "TXN-2024-001234",
"type": "anytime_escrow",
"sub_type": "marketplace",
"status": "accepted",
"funding_status": "pending",
"amount": 150000.5,
"details": "Property settlement for 123 Main St",
"created_at": "2024-01-15T10:30:00Z"
}
}
Returns full transaction details including funding information. Provide exactly one of transaction_id or reference_id. Requires party_id to verify access.
The transaction UUID (36-character internal identifier). Required when reference_id is not provided. Must not be provided with reference_id.
The transaction reference number. Required when transaction_id is not provided. Must not be provided with transaction_id.
The ID of the buyer, seller, or disbursement recipient to verify access
curl --request GET \
--get "https://partners.staging.goescrow.net/api/v1/transactions/status?transaction_id=9d2e5c8a-1234-5678-9abc-def012345678&reference_id=TXN-2024-001234&party_id=9d2e5c8a-1234-5678-9abc-def012345678" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"transaction_id\": \"de17da62-a600-3a0d-8799-a28536037458\",
\"reference_id\": \"ea\",
\"party_id\": \"8270e4ea-b05c-3440-a56d-57234a59f063\"
}"
{
"data": {
"id": "9d2e5c8a-1234-5678-9abc-def012345678",
"reference": "TXN-2024-001234",
"type": "anytime_escrow",
"sub_type": "marketplace",
"status": "accepted",
"funding_status": "pending",
"amount": 150000.5,
"fee": 1500,
"amount_with_fee": 151500.5,
"details": "Property settlement",
"release_at": null,
"created_at": "2024-01-15T10:30:00Z",
"buyer_id": "9d2e5c8a-1234-5678-9abc-def012345678",
"buyer_reference": "ABC123",
"seller_id": "9d2e5c8a-1234-5678-9abc-def012345679",
"seller_reference": "XYZ789",
"other_party_hint": "J*** D***",
"funding_details": {
"bsb": "123456",
"account_number": "12345678",
"account_name": "GoEscrow Trust",
"pay_id": "pay@goescrow.com.au",
"reference": "TXN-2024-001234",
"rail": "azupay",
"account_scope": "transaction",
"payment_reference": "TXN-2024-001234",
"reference_required": false,
"provisioning_status": "ready",
"amount_received": "0.00",
"amount_outstanding": "151500.50"
}
}
}
Returns full transaction details including funding information. Requires party_id to verify access.
The transaction UUID (36-character internal identifier)
The ID of the buyer or seller to verify access
curl --request GET \
--get "https://partners.staging.goescrow.net/api/v1/transactions/1?party_id=9d2e5c8a-1234-5678-9abc-def012345678" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" {
"data": {
"id": "9d2e5c8a-1234-5678-9abc-def012345678",
"reference": "TXN-2024-001234",
"type": "anytime_escrow",
"sub_type": "marketplace",
"status": "accepted",
"funding_status": "pending",
"amount": 150000.5,
"fee": 1500,
"amount_with_fee": 151500.5,
"details": "Property settlement",
"release_at": null,
"created_at": "2024-01-15T10:30:00Z",
"buyer_id": "9d2e5c8a-1234-5678-9abc-def012345678",
"buyer_reference": "ABC123",
"seller_id": "9d2e5c8a-1234-5678-9abc-def012345679",
"seller_reference": "XYZ789",
"other_party_hint": "J*** D***",
"funding_details": {
"bsb": "123456",
"account_number": "12345678",
"account_name": "GoEscrow Trust",
"pay_id": "pay@goescrow.com.au",
"reference": "TXN-2024-001234",
"rail": "azupay",
"account_scope": "transaction",
"payment_reference": "TXN-2024-001234",
"reference_required": false,
"provisioning_status": "ready",
"amount_received": "0.00",
"amount_outstanding": "151500.50"
}
}
}
Calculates fees and provides a quote for a transaction without creating it. Uses the same request structure as transaction creation. This allows partners to show pricing to their customers before committing to a transaction.
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/transactions/quote" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"action\": \"buy\",
\"type\": \"anytime_escrow\",
\"amount_type\": \"escrow\",
\"other_user\": \"9d2e5c8a-1234-5678-9abc-def012345678\",
\"other_company_id\": \"9d2e5c8a-1234-5678-9abc-def012345678\",
\"sub_type\": \"super_disbursement\",
\"user_id\": \"9d2e5c8a-1234-5678-9abc-def012345678\",
\"company_id\": \"9d2e5c8a-1234-5678-9abc-def012345678\",
\"release_at\": \"2024-12-31T23:59:59Z\",
\"details\": \"Dental Surgery\",
\"amount\": 15000050,
\"disbursements\": [
\"voluptatem\"
]
}"
{
"data": {
"sub_type": "super_disbursement",
"amount": 150000.5,
"partner_fee": 750,
"partner_fee_percentage": 0.5,
"goescrow_fee": 300,
"goescrow_fee_percentage": 0.2,
"total_fees": 1050,
"net_amount": 149950.5,
"disbursements_count": 2,
"disbursements": [
{
"user_id": "9d2e5c8a-1234-5678-9abc-def012345679",
"amount": 75000.25
},
{
"company_id": "9d2e5c8a-1234-5678-9abc-def012345680",
"amount": 74950.25
}
]
}
}
Uploads one or more files to a transaction filing cabinet. The authenticated partner must own the transaction or be its marketplace operator.
The transaction UUID (36-character internal identifier)
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/transactions/9d2e5c8a-1234-5678-9abc-def012345678/files" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: multipart/form-data" \
--header "Accept: application/json" \
--form "files[]=@/tmp/phpp5ieuie8tio0bNkBFIH" {
"data": [
{
"id": "9d2e5c8a-1234-5678-9abc-def012345678",
"file": "a1b2c3d4/document.pdf",
"filename": "document.pdf",
"created_at": "2024-01-15T10:30:00Z"
}
]
}
Triggers settlement for a marketplace escrow transaction. Only the marketplace operator can trigger settlement.
The transaction UUID (36-character internal identifier)
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/transactions/9d2e5c8a-1234-5678-9abc-def012345678/settle" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Idempotency-Key: 6f3a8e1c-9b2d-4f5a-8c1e-2a7b9d0e1f23" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"buyer_id\": \"9d2e5c8a-1234-5678-9abc-def012345678\",
\"seller_id\": \"9d2e5c8a-1234-5678-9abc-def012345679\",
\"settlement_amount\": 150000.5
}"
{
"message": "Settlement initiated successfully.",
"transaction_id": "9d2e5c8a-1234-5678-9abc-def012345678",
"status": "settlement_in_progress"
}
Initiate PayTo Payments for Transactions
Initiates a PayTo debit payment from the specified user's bank account to fund the transaction. The user must have an active PayTo agreement. This endpoint dispatches an async job and returns immediately with a tracking ID.
The transaction UUID (36-character internal identifier)
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/transactions/9d2e5c8a-1234-5678-9abc-def012345678/payto-payment" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Idempotency-Key: 6f3a8e1c-9b2d-4f5a-8c1e-2a7b9d0e1f23" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"user_id\": \"9d2e5c8a-1234-5678-9abc-def012345678\"
}"
{
"code": "accepted",
"message": "Payment initiation queued. Use the tracking_id to poll for status.",
"tracking_id": "payto_9d2e5c8a"
}
Checks the status of a PayTo payment using either a tracking_id (from async initiation) or a payment_initiation_id (from Azupay).
The transaction UUID (36-character internal identifier)
Either a tracking_id (e.g., payto_abc123) or an Azupay payment_initiation_id (e.g., PI-123456789)
curl --request GET \
--get "https://partners.staging.goescrow.net/api/v1/transactions/9d2e5c8a-1234-5678-9abc-def012345678/payto-payment/payto_abc123" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" {
"code": "settled",
"message": "Payment settled successfully. Transaction is now funded.",
"status": "settled"
}
Manage User Bank Accounts
Updates the bank account details for a user. This will automatically trigger a verification payout of $0.01 to the new account with a 6-digit verification code in the transaction description.
The user UUID (36-character internal identifier)
curl --request PUT \
"https://partners.staging.goescrow.net/api/v1/users/9d2e5c8a-1234-5678-9abc-def012345678/bank-account" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"bsb_number\": \"123456\",
\"account_number\": \"12345678\",
\"account_name\": \"John Doe\"
}"
{
"message": "Bank account updated. Verification code sent via $0.01 payout.",
"is_verified": false
}
Verifies the bank account using the 6-digit code received in the $0.01 verification payout.
The user UUID (36-character internal identifier)
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/users/9d2e5c8a-1234-5678-9abc-def012345678/bank-account/verify" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"code\": \"123456\"
}"
{
"message": "Bank account verified successfully.",
"is_verified": true
}
Manage User Identification Documents
Creates a new passport record for the user or updates an existing one. Only one passport per user is allowed.
The user UUID (36-character internal identifier)
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/users/9d2e5c8a-1234-5678-9abc-def012345678/passport" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"document_number\": \"N1234567\",
\"first_name\": \"John\",
\"last_name\": \"Doe\",
\"middle_name\": \"Michael\",
\"issuing_country\": \"United Kingdom\",
\"nationality\": \"British\",
\"date_of_birth\": \"1990-01-15\",
\"date_of_issue\": \"2020-01-15\",
\"date_of_expiration\": \"2030-01-15\",
\"place_of_birth\": \"Sydney, Australia\",
\"gender\": \"M\"
}"
{
"data": {
"id": "9d2e5c8a-1234-5678-9abc-def012345678",
"document_number": "N1234567",
"first_name": "John",
"last_name": "Doe",
"middle_name": "Michael",
"nationality": "United Kingdom",
"issuing_country": "United Kingdom",
"date_of_birth": "1990-01-15",
"date_of_issue": "2020-01-15",
"date_of_expiration": "2030-01-15",
"place_of_birth": "Sydney, Australia",
"gender": "M",
"rapidid_verification_requested_at": null,
"rapidid_verified_at": null,
"rapidid_failed_at": null,
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-15T10:30:00Z"
}
}
Retrieves the passport information for the specified user.
The user UUID (36-character internal identifier)
curl --request GET \
--get "https://partners.staging.goescrow.net/api/v1/users/9d2e5c8a-1234-5678-9abc-def012345678/passport" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" {
"data": {
"id": "9d2e5c8a-1234-5678-9abc-def012345678",
"document_number": "N1234567",
"first_name": "John",
"last_name": "Doe",
"middle_name": "Michael",
"nationality": "United Kingdom",
"issuing_country": "United Kingdom",
"date_of_birth": "1990-01-15",
"date_of_issue": "2020-01-15",
"date_of_expiration": "2030-01-15",
"place_of_birth": "Sydney, Australia",
"gender": "M",
"rapidid_verification_requested_at": null,
"rapidid_verified_at": null,
"rapidid_failed_at": null,
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-15T10:30:00Z"
}
}
Deletes the passport record for the specified user.
The user UUID (36-character internal identifier)
curl --request DELETE \
"https://partners.staging.goescrow.net/api/v1/users/9d2e5c8a-1234-5678-9abc-def012345678/passport" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" [Empty response]
Creates a new Medicare card record for the user or updates an existing one. Only one Medicare card per user is allowed.
The user UUID (36-character internal identifier)
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/users/9d2e5c8a-1234-5678-9abc-def012345678/medicare" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"document_number\": \"1234567890\",
\"name_on_card\": \"John Michael Doe\",
\"card_color\": \"green\",
\"individual_reference_number\": \"1\",
\"expiration_date\": \"2025-12\"
}"
{
"data": {
"id": "9d2e5c8a-1234-5678-9abc-def012345678",
"document_number": "1234567890",
"name_on_card": "John Michael Doe",
"card_color": "green",
"individual_reference_number": "1",
"expiration_date": "2025-12",
"rapidid_verification_requested_at": null,
"rapidid_verified_at": null,
"rapidid_failed_at": null,
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-15T10:30:00Z"
}
}
Retrieves the Medicare card information for the specified user.
The user UUID (36-character internal identifier)
curl --request GET \
--get "https://partners.staging.goescrow.net/api/v1/users/9d2e5c8a-1234-5678-9abc-def012345678/medicare" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" {
"data": {
"id": "9d2e5c8a-1234-5678-9abc-def012345678",
"document_number": "1234567890",
"name_on_card": "John Michael Doe",
"card_color": "green",
"individual_reference_number": "1",
"expiration_date": "2025-12",
"rapidid_verification_requested_at": null,
"rapidid_verified_at": null,
"rapidid_failed_at": null,
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-15T10:30:00Z"
}
}
Deletes the Medicare card record for the specified user.
The user UUID (36-character internal identifier)
curl --request DELETE \
"https://partners.staging.goescrow.net/api/v1/users/9d2e5c8a-1234-5678-9abc-def012345678/medicare" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" [Empty response]
Creates a new driver license record for the user or updates an existing one. Only one driver license per user is allowed.
The user UUID (36-character internal identifier)
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/users/9d2e5c8a-1234-5678-9abc-def012345678/driver-license" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"state_issued\": \"NSW\",
\"license_number\": \"12345678\",
\"card_number\": \"1234567890\",
\"expiration_date\": \"2030-01-15\",
\"first_name\": \"John\",
\"last_name\": \"Doe\",
\"middle_name\": \"Michael\",
\"date_of_birth\": \"1990-01-15\"
}"
{
"data": {
"id": "9d2e5c8a-1234-5678-9abc-def012345678",
"state_issued": "NSW",
"license_number": "12345678",
"card_number": "1234567890",
"expiration_date": "2030-01-15",
"first_name": "John",
"last_name": "Doe",
"middle_name": "Michael",
"date_of_birth": "1990-01-15",
"rapidid_verification_requested_at": null,
"rapidid_verified_at": null,
"rapidid_failed_at": null,
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-15T10:30:00Z"
}
}
Retrieves the driver license information for the specified user.
The user UUID (36-character internal identifier)
curl --request GET \
--get "https://partners.staging.goescrow.net/api/v1/users/9d2e5c8a-1234-5678-9abc-def012345678/driver-license" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" {
"data": {
"id": "9d2e5c8a-1234-5678-9abc-def012345678",
"state_issued": "NSW",
"license_number": "12345678",
"card_number": "1234567890",
"expiration_date": "2030-01-15",
"first_name": "John",
"last_name": "Doe",
"middle_name": "Michael",
"date_of_birth": "1990-01-15",
"rapidid_verification_requested_at": null,
"rapidid_verified_at": null,
"rapidid_failed_at": null,
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-15T10:30:00Z"
}
}
Deletes the driver license record for the specified user.
The user UUID (36-character internal identifier)
curl --request DELETE \
"https://partners.staging.goescrow.net/api/v1/users/9d2e5c8a-1234-5678-9abc-def012345678/driver-license" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" [Empty response]
Creates a new immigration card record for the user or updates an existing one. Only one immigration card per user is allowed.
The user UUID (36-character internal identifier)
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/users/9d2e5c8a-1234-5678-9abc-def012345678/immigration-card" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"given_name\": \"John\",
\"family_name\": \"Doe\",
\"card_number\": \"IMM123456\",
\"expiration_date\": \"2030-01-15\",
\"card_type\": \"ams\",
\"vevo_check_given_name\": \"John\",
\"vevo_check_family_name\": \"Doe\",
\"vevo_check_passport_number\": \"N1234567\",
\"vevo_check_country_of_issue\": \"Australia\"
}"
{
"data": {
"id": "9d2e5c8a-1234-5678-9abc-def012345678",
"given_name": "John",
"family_name": "Doe",
"card_number": "IMM123456",
"expiration_date": "2030-01-15",
"card_type": "ams",
"vevo_check_given_name": "John",
"vevo_check_family_name": "Doe",
"vevo_check_passport_number": "N1234567",
"vevo_check_country_of_issue": "Australia",
"rapidid_verification_requested_at": null,
"rapidid_verified_at": null,
"rapidid_failed_at": null,
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-15T10:30:00Z"
}
}
Retrieves the immigration card information for the specified user.
The user UUID (36-character internal identifier)
curl --request GET \
--get "https://partners.staging.goescrow.net/api/v1/users/9d2e5c8a-1234-5678-9abc-def012345678/immigration-card" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" {
"data": {
"id": "9d2e5c8a-1234-5678-9abc-def012345678",
"given_name": "John",
"family_name": "Doe",
"card_number": "IMM123456",
"expiration_date": "2030-01-15",
"card_type": "ams",
"vevo_check_given_name": "John",
"vevo_check_family_name": "Doe",
"vevo_check_passport_number": "N1234567",
"vevo_check_country_of_issue": "Australia",
"rapidid_verification_requested_at": null,
"rapidid_verified_at": null,
"rapidid_failed_at": null,
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-15T10:30:00Z"
}
}
Deletes the immigration card record for the specified user.
The user UUID (36-character internal identifier)
curl --request DELETE \
"https://partners.staging.goescrow.net/api/v1/users/9d2e5c8a-1234-5678-9abc-def012345678/immigration-card" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" [Empty response]
Creates a new Centrelink card record for the user or updates an existing one. Only one Centrelink card per user is allowed.
The user UUID (36-character internal identifier)
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/users/9d2e5c8a-1234-5678-9abc-def012345678/centrelink-card" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"crn\": \"123456789A\",
\"name_on_card\": \"John Doe\",
\"expiration_date\": \"2030-01-15\",
\"card_type\": \"hcc\"
}"
{
"data": {
"id": "9d2e5c8a-1234-5678-9abc-def012345678",
"crn": "123456789A",
"name_on_card": "John Doe",
"expiration_date": "2030-01-15",
"card_type": "hcc",
"rapidid_verification_requested_at": null,
"rapidid_verified_at": null,
"rapidid_failed_at": null,
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-15T10:30:00Z"
}
}
Retrieves the Centrelink card information for the specified user.
The user UUID (36-character internal identifier)
curl --request GET \
--get "https://partners.staging.goescrow.net/api/v1/users/9d2e5c8a-1234-5678-9abc-def012345678/centrelink-card" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" {
"data": {
"id": "9d2e5c8a-1234-5678-9abc-def012345678",
"crn": "123456789A",
"name_on_card": "John Doe",
"expiration_date": "2030-01-15",
"card_type": "hcc",
"rapidid_verification_requested_at": null,
"rapidid_verified_at": null,
"rapidid_failed_at": null,
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-15T10:30:00Z"
}
}
Deletes the Centrelink card record for the specified user.
The user UUID (36-character internal identifier)
curl --request DELETE \
"https://partners.staging.goescrow.net/api/v1/users/9d2e5c8a-1234-5678-9abc-def012345678/centrelink-card" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" [Empty response]
Manage User PayTo Agreements
Returns the current PayTo agreement status and details for a user.
The user UUID (36-character internal identifier)
curl --request GET \
--get "https://partners.staging.goescrow.net/api/v1/users/9d2e5c8a-1234-5678-9abc-def012345678/payto-agreement" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" {
"has_agreement": true,
"agreement_id": "PA-123456",
"maximum_amount": 10000,
"status": "ACTIVE"
}
Creates a new PayTo agreement for the user. The user must authorize the agreement in their banking app.
The user UUID (36-character internal identifier)
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/users/9d2e5c8a-1234-5678-9abc-def012345678/payto-agreement" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"maximum_amount\": 5000,
\"pay_id\": \"john@example.com\",
\"pay_id_type\": \"EMAIL\",
\"account_name\": \"John Doe\",
\"account_number\": \"12345678\",
\"bsb\": \"123456\"
}"
{
"agreement_id": "PA-123456",
"status": "CREATED",
"message": "PayTo agreement created. User must authorize in their banking app."
}
Manage webhook subscriptions for transaction events
Returns all registered webhooks for the authenticated partner.
curl --request GET \
--get "https://partners.staging.goescrow.net/api/v1/webhooks" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" {
"data": [
{
"id": "9d2e5c8a-1234-5678-9abc-def012345678",
"url": "https://partner.com/webhooks/goescrow",
"events": [
"transaction.created",
"transaction.clearance_pending",
"transaction.funded",
"transaction.status_changed",
"transaction.funding_status_changed"
],
"is_active": true,
"last_triggered_at": "2024-01-15T10:30:00Z",
"failure_count": 0,
"created_at": "2024-01-01T00:00:00Z"
}
]
}
Registers a new webhook URL to receive transaction event notifications. Available events: transaction.created (when a transaction is created), transaction.clearance_pending (when inbound funding is held for clearance), transaction.funded (when a transaction is funded), transaction.status_changed (when transaction status changes), transaction.funding_status_changed (when transaction funding status changes), transaction.completed (when a transaction is completed/settled).
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/webhooks" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"url\": \"https:\\/\\/partner.com\\/webhooks\\/goescrow\",
\"events\": [
\"transaction.created\",
\"transaction.clearance_pending\"
]
}"
{
"message": "Webhook registered successfully.",
"id": "9d2e5c8a-1234-5678-9abc-def012345678",
"url": "https://partner.com/webhooks/goescrow",
"secret": "whsec_abc123xyz789...",
"events": [
"transaction.created",
"transaction.clearance_pending"
]
}
Unregisters a webhook.
The webhook ID
curl --request DELETE \
"https://partners.staging.goescrow.net/api/v1/webhooks/1" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" {
"message": "Webhook deleted successfully."
}
Returns the delivery history for a webhook (most recent first), so missed events can be inspected and replayed after an outage. Each delivery records the event, the exact payload that was (or will be) sent, the number of attempts, and the last response status.
The webhook ID
curl --request GET \
--get "https://partners.staging.goescrow.net/api/v1/webhooks/1/deliveries" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" {
"data": [
{
"id": "9f1b2c3d-4567-89ab-cdef-0123456789ab",
"event": "transaction.funded",
"status": "failed",
"attempts": 3,
"response_status": 500,
"last_attempted_at": "2024-01-15T10:32:00Z",
"delivered_at": null,
"created_at": "2024-01-15T10:30:00Z",
"payload": {
"transaction_id": "...",
"status": "pending"
}
}
],
"meta": {
"current_page": 1,
"last_page": 1,
"per_page": 50,
"total": 1
}
}
Queues a fresh delivery attempt for a past event, using the original payload. Use this to backfill events your endpoint missed during an outage. A new delivery record is created (with a new id) so the original attempt history is preserved.
The webhook ID
The delivery ID to redeliver
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/webhooks/1/deliveries/1/redeliver" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" {
"message": "Webhook delivery has been queued for redelivery.",
"id": "a1b2c3d4-5678-90ab-cdef-1234567890ab",
"event": "transaction.funded",
"status": "pending"
}
Manage company bank accounts using Confirmation of Payee
Updates company bank details and runs Confirmation of Payee checks against the company's active known names.
The company UUID (36-character internal identifier)
curl --request PUT \
"https://partners.staging.goescrow.net/api/v1/companies/9d2e5c8a-1234-5678-9abc-def012345678/bank-account" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"bsb_number\": \"123456\",
\"account_number\": \"12345678\",
\"account_name\": \"Acme Corp Pty Ltd\"
}"
{
"message": "Company bank account updated successfully.",
"is_verified": true
}
Re-runs Confirmation of Payee against the company's existing bank details. This is not payout-code verification.
The company UUID (36-character internal identifier)
curl --request POST \
"https://partners.staging.goescrow.net/api/v1/companies/9d2e5c8a-1234-5678-9abc-def012345678/bank-account/verify" \
--header "X-API-Key: {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" {
"message": "Company bank account check completed.",
"is_verified": true
}