Owner transfers

Create an owner transfer

Moves money between two properties the same owner holds. The amount leaves fromPropertyId and arrives at toPropertyId; two accounting transactions are created, one on each side.

POST
https://api.portal.magicdoor.com/company-app/owners/transfers

Authorization

Authorizationstringrequired
Bearer token — Send your API token in the Authorization header as Bearer <token>. Requests without a valid token are rejected with 401 Unauthorized.

Body

application/json

ownerIdstringrequired

The owner whose money is moving. Must belong to the caller's company and be active.

fromPropertyIdstringrequired

The property the money leaves.

toPropertyIdstringrequired

The property the money arrives at.

amountnumberrequired

How much to move, in dollars and cents. At least 1.00. Always positive — direction comes from the two property ids.

transferDatestring · date-time

The moment to date the transfer, read in the company's timezone. Left out, now is used.

memostring

A note on the transfer. At most 1000 characters.

referencestring

A reference on the transfer. At most 200 characters.

paymentMethodenum<string>

How the money actually moved, when it was moved outside MagicDoor.

achdebitCardwalletcreditCardcheckcashiersCheckmoneyOrdercashzelleothercredittransfer
externalTransactionIdstring

The reference from whatever system actually moved the money. At most 100 characters.

metadataobject

Free-form key-value pairs to keep on the transfer.

Response

200 · The transfer that was created.

idstring

The owner transfer. A Snowflake id sent as a decimal string.

ownerIdstring

The owner whose money is being moved. Both properties must be theirs.

transferDatestring · date

The day the money moved.

amountnumber

How much moved, in dollars and cents. Always positive: it leaves the source property and arrives at the destination property.

sourceobject

The source side of the transfer — where the money leaves.

destinationobject

The destination side of the transfer — where the money arrives.

memostring

A note on the transfer. Absent when none was set.

referencestring

A reference on the transfer. Absent when none was set.

filesobject[]

Files attached to the record.

metadataobject

Free-form key-value pairs kept on the transfer.

createdstring · date-time

When the transfer was created, in the company's timezone.

updatedstring · date-time

When it last changed, in the company's timezone.

creatorobject

Who created the record.

ownerobject

The owner named by ownerId, as the full owner record.

portfoliosobject[]

The portfolios the lines belong to, resolved.

propertiesobject[]

The properties the lines apply to, resolved.

transactionsobject[]

The accounting transactions behind the allocations, resolved.

bankAccountsobject[]

The bank accounts those transactions moved money through, resolved. Account and routing numbers are masked to their last four digits.

chartOfAccountsobject[]

The chart of accounts the lines book to, resolved.

hydratedFilesobject[]

The attachments in files, resolved to full file records with signed download URLs.

creatorInfoobject

The person behind creator, resolved. Exactly one of propertyManager, vendor, tenant and owner is present, matching creator.type.

400 · `amount` is below 1.00, or a required id is missing or not a Snowflake id.

401 · The access token is missing, expired, or does not belong to a property manager.

404 · The owner or either property does not exist for the caller's company.

422 · The owner is deactivated, or the accounting service refused the transfer.