# Business rules

> What Shuttle actually does when something changes. Every operation that alters a payment, an agreement, an account or a provider connection follows one set of r

**What Shuttle actually does when something changes.** Every operation that alters a payment, an agreement, an account or a provider connection follows one set of rules, whether it is reached from a screen your platform embeds or straight from the API. Those rules are written here once, and the screen guides and the API reference both link to them.

This is the reference for the behaviour you are integrating against. Use it when you need to know what Shuttle will accept, what it will refuse and why, what a call changes beyond the obvious, and what reaches your webhooks afterwards.

### What is here and what is not

These pages describe the platform as Shuttle runs it. What your merchants can actually reach is narrower: many operations sit behind a control your platform can switch off, or behind a permission you assign, and some depend on the payment processor a merchant connected. A page describing an operation is not a promise that every merchant of yours can perform it.

Where a rule is enforced only by a screen and not by the API, the page says so, so you know what a direct API call would be allowed to do.

### Who can do what

Each user is given one of four roles: see [Roles and permissions](/platforms/user-guides/rules-roles/). Every page opens its "Who can do this" section with the roles that can perform the operation. The permission names that follow are for platforms that manage permissions themselves; if you use the four roles as they come, you can ignore them.

### How to read a page

They all follow the same shape. Where you can do this lists the screens and the API operations. Before you start is what must already be true. Inputs is what the call takes. Rules is what Shuttle checks, what you see when a check fails, and whether the check is the API or only a screen. What happens is the outcome, including what is sent to the customer and what reaches your webhooks. Who can do this is the roles, permissions and options.

## Operations

Every operation, grouped by what it acts on.

### Accounts (people and companies)

- [Create an account](/platforms/user-guides/rules-account-create/)
- [Update an account](/platforms/user-guides/rules-account-update/)

### Saved payment methods

- [Archive a saved payment method](/platforms/user-guides/rules-payment-method-archive/)

### Notes and attachments

- [Add or edit a note with attachments](/platforms/user-guides/rules-note-save/)
- [Delete a note or an attachment](/platforms/user-guides/rules-note-delete/)

### Contracts (recurring and scheduled agreements)

- [Amend a contract's terms](/platforms/user-guides/rules-contract-amend/)
- [Amend a scheduled contract's instalments](/platforms/user-guides/rules-contract-amend-schedule/)
- [Change the payment method on a contract](/platforms/user-guides/rules-contract-change-payment-method/)
- [Collect a contract's arrears now](/platforms/user-guides/rules-contract-make-payment/)
- [Move the next charge](/platforms/user-guides/rules-contract-reschedule-next-charge/)
- [Reschedule the next payment](/platforms/user-guides/rules-contract-reschedule-payment/)
- [Resume a contract](/platforms/user-guides/rules-contract-resume/)
- [Set up a recurring or scheduled agreement](/platforms/user-guides/rules-contract-create/)
- [Suspend a contract](/platforms/user-guides/rules-contract-suspend/)
- [Terminate a contract](/platforms/user-guides/rules-contract-terminate/)

### Charges (contract instalments)

- [Amend a charge](/platforms/user-guides/rules-charge-amend/)
- [Write off a charge](/platforms/user-guides/rules-charge-void/)

### Payments, refunds, captures and voids

- [Attribute an unattributed payment](/platforms/user-guides/rules-payment-reattribute/)
- [Capture an authorised payment](/platforms/user-guides/rules-payment-capture/)
- [Mark an unresolved payment approved or declined](/platforms/user-guides/rules-payment-override-status/)
- [Refund a payment](/platforms/user-guides/rules-payment-refund/)
- [Save a payment method without charging it](/platforms/user-guides/rules-payment-tokenise/)
- [Take a one-off payment](/platforms/user-guides/rules-payment-take/)
- [Undo an offline refund](/platforms/user-guides/rules-payment-undo-refund/)
- [Void an authorisation](/platforms/user-guides/rules-payment-void/)

### Branded localisation strings

- [Import branded strings from a file](/platforms/user-guides/rules-localisation-import-strings/)
- [Override a branded string](/platforms/user-guides/rules-localisation-update-string/)
- [Reset a branded string to its original](/platforms/user-guides/rules-localisation-reset-string/)

### Payment gateways (provider connections)

- [Connect a payment processor](/platforms/user-guides/rules-gateway-connect/)
- [Disconnect a provider](/platforms/user-guides/rules-gateway-disconnect/)
- [Dismiss an archived provider's notice](/platforms/user-guides/rules-gateway-dismiss-archive-notice/)
- [Reconnect a provider](/platforms/user-guides/rules-gateway-reconnect/)
- [Restore an archived provider](/platforms/user-guides/rules-gateway-restore/)
- [Update a provider's settings](/platforms/user-guides/rules-gateway-update/)

### Workflows (fraud screening connections)

- [Connect a fraud workflow](/platforms/user-guides/rules-workflow-connect/)

### Legal entity routes (which provider serves each payment method at checkout)

- [Restrict a payment method by transaction amount](/platforms/user-guides/rules-legal-entity-route-set-amount-rules/)
- [Route a payment method to a provider](/platforms/user-guides/rules-legal-entity-route-set-payment-method-routing/)
- [Stop offering a payment method](/platforms/user-guides/rules-legal-entity-route-disable-payment-method/)

### Instance (merchant account settings: terms, wallets, merchant details)

- [Accept Shuttle's terms for the instance](/platforms/user-guides/rules-instance-accept-terms/)
- [Enable wallet support for the instance](/platforms/user-guides/rules-instance-enable-wallets/)
- [Set the merchant name and country](/platforms/user-guides/rules-instance-set-merchant-details/)