{ "opencollection": "1.0.0", "info": { "name": "Newline Platform API", "version": "1.0.0" }, "request": { "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "items": [ { "info": { "name": "Auth", "type": "folder" }, "items": [ { "info": { "name": "Generate an authentication token", "type": "http" }, "http": { "method": "POST", "url": "https://sandbox.newline53.com/api/v1/auth", "headers": [ { "name": "x-trace-id", "value": "" }, { "name": "Authorization", "value": "header.payload.hmacsignature" } ] }, "docs": "An access token can be generated by providing a refresh token. The generated token then can be used as an authentication token to access resources for up to 8 hours.\n\nThe Client will need to provide a JWS, its payload containing Program UID as `sub` (subject) and current Epoch time as `iat` (issued at timestamp), signed by an HMAC that has been shared offline previously using HS512. See the above guide for more details.\n\nWhen Newline processes the `POST /auth` request, it validates that the `iat" } ] }, { "info": { "name": "Customers", "type": "folder" }, "items": [ { "info": { "name": "Get a list of Customers", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/customers", "headers": [ { "name": "x-trace-id", "value": "" } ], "params": [ { "name": "uid", "value": "", "type": "query", "description": "Filter by Customer. Multiple values are allowed e.g. `uid[]=uKxmLxUEiSj5h4M3&uid[]=y9reyPMNEWuuYSC1`.\n" }, { "name": "status", "value": "", "type": "query", "description": "Filter by onboarding status. Please note that the `initiated` enum value will not be respected unless the `include_initiated=true` parameter is also provided. Multiple values are allowed e.g. `status[]=queued&status[]=active`.\n" }, { "name": "include_initiated", "value": "", "type": "query", "description": "By default, Customers in `initiated` status are not shown, even if the `status=initiated` parameter is provided. In order for Customers with status `initiated` to appear in search results, parameters must include `include_initiated=true`\n" }, { "name": "kyc_status", "value": "", "type": "query", "description": "Filter by KYC status. Multiple values are allowed e.g. `kyc_status[]=approved&kyc_status[]=under_review`." }, { "name": "customer_type", "value": "", "type": "query", "description": "Only return Customers with a customer type matching exactly what is submitted. Multiple values are allowed e.g. `customer_type[]=primary&customer_type[]=secondary`.\n" }, { "name": "first_name", "value": "", "type": "query", "description": "Only return Customers with a first name matching exactly what is submitted. Multiple values are allowed e.g. `first_name[]=Olive&first_name[]=Jack`.\n" }, { "name": "last_name", "value": "", "type": "query", "description": "Only return Customers with a last name matching exactly what is submitted. Multiple values are allowed e.g. `last_name[]=Oyl&last_name[]=Hammon`.\n" }, { "name": "email", "value": "", "type": "query", "description": "Only return Customers with an email address matching exactly what is submitted. Multiple values are allowed e.g. `email[]=olive.oyl@popeyes.com&email[]=olive.oyl2@gmail.com`.\n" }, { "name": "locked", "value": "", "type": "query", "description": "Only return locked Customers if `true` and only return unlocked Customers if `false`" }, { "name": "program_uid", "value": "", "type": "query", "description": "Only return Customers belonging to the submitted Program. Multiple values are allowed e.g. `program_uid[]=pQtTCSXz57fuefzp&program_uid[]=oPsSBRWy46etdeyo`.\n" }, { "name": "business_name", "value": "", "type": "query", "description": "Only return Customers with a business name at least partially matching what is submitted. Exact matches will be sorted first.\n" }, { "name": "external_uid", "value": "", "type": "query", "description": "A unique, immutable id provided by the Client. Multiple values are allowed e.g. `external_uid[]=uKxmLxUEiSj5h4M3&external_uid[]=y9reyPMNEWuuYSC1`." }, { "name": "pool_uid", "value": "", "type": "query", "description": "Filter by pool. Multiple values are allowed, e.g. `pool_uid[]=wTSMX1GubP21ev2h&pool_uid[]=7UvkHn3Ss9AbWe2c`.\n" }, { "name": "limit", "value": "", "type": "query", "description": "Maximum number of items to retrieve. This filter is automatically applied with the default value if not given.\n" }, { "name": "offset", "value": "", "type": "query", "description": "Index of the items to start retrieving from" }, { "name": "sort", "value": "", "type": "query" } ] }, "docs": "Retrieves a list of Customers filtered by the given parameters. Filter parameters are not case sensitive, but will only return exact matches.\n\nMultiple filter parameters can be provided at once, but a result will not be returned unless there are exact matches for all submitted parameters. As an example: submitting `first_name=Olive&last_name=Oyl` would match exactly \"Olive Oyl\" but NOT \"Olive Boyl\" or \"Oliver Oyl\".\n\nThe list endpoint will not include sensitive Customer data such as address or DO" }, { "info": { "name": "Create a new Customer", "type": "http" }, "http": { "method": "POST", "url": "https://sandbox.newline53.com/api/v1/customers", "headers": [ { "name": "x-trace-id", "value": "" } ], "body": { "type": "json", "data": "{}" } }, "docs": "This endpoint is used to initialize a new Customer. All request body data is optional unless otherwise specified. For customer types other than `primary`, `customer_type` must be specified.\n\nThe `customer_type` cannot be changed after the customer is created. Customer details accepted by [Adjust Customer Data](https://developers.newline53.com/reference/put_customers-uid) can be sent in this request if desired. See Adjust Customer Data for an example with all customer details provided." }, { "info": { "name": "Get a single Customer", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/customers/:uid", "headers": [ { "name": "x-trace-id", "value": "" } ] }, "docs": "Retrieve overall status about a Customer as well as their total Asset Balances across all accounts.\n" }, { "info": { "name": "Adjust Customer Data", "type": "http" }, "http": { "method": "PUT", "url": "https://sandbox.newline53.com/api/v1/customers/:uid", "headers": [ { "name": "x-trace-id", "value": "" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Submit or update a Customer's personally identifiable information (PII) after the Customer is created. Before a Customer has been onboarded to a product with [Customer Product](https://developers.newline53.com/reference/post_customer-products), this endpoint may be used to update or remove any details without validations. After the Customer has been onboarded to a product, all validations will be enforced.\n\nThis endpoint is used to supply the remaining personally identifiable information (PII) f" }, { "info": { "name": "Archive a Customer", "type": "http" }, "http": { "method": "DELETE", "url": "https://sandbox.newline53.com/api/v1/customers/:uid", "headers": [ { "name": "x-trace-id", "value": "" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Archiving a Customer refunds any remaining balance, closes all of their active Synthetic and Custodial Accounts and closes their Debit Cards. This process can take up to 8 business days to complete as the Transfers take place.\n\nWhen archiving a customer, you can prevent them from reapplying to your program by setting `can_apply_again` to false. If you do not set any value, `can_apply_again` defaults to true.\n\nWhen a request to archive a Customer is first received, the customer status will update" } ] }, { "info": { "name": "Pools", "type": "folder" }, "items": [ { "info": { "name": "List Pools", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/pools", "headers": [ { "name": "x-trace-id", "value": "" } ], "params": [ { "name": "customer_uid", "value": "", "type": "query", "description": "Filter by Customer. Multiple values are allowed, e.g. `customer_uid[]=uKxmLxUEiSj5h4M3&customer_uid[]=y9reyPMNEWuuYSC1`.\n" }, { "name": "limit", "value": "", "type": "query", "description": "Maximum number of items to retrieve. This filter is automatically applied with the default value if not given.\n" }, { "name": "offset", "value": "", "type": "query", "description": "Index of the items to start retrieving from" } ] }, "docs": "Retrieves a list of Pools filtered by the given parameters.\n" }, { "info": { "name": "Get a single Pool", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/pools/:uid", "headers": [ { "name": "x-trace-id", "value": "" } ], "params": [ { "name": "uid", "value": "", "type": "path", "description": "Newline-generated unique id resource specific to the current endpoint" } ] }, "docs": "Retrieve overall status about a Pool as well as its total Asset Balances across all associated accounts." } ] }, { "info": { "name": "Products", "type": "folder" }, "items": [ { "info": { "name": "List Products", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/products", "headers": [ { "name": "x-trace-id", "value": "" } ], "params": [ { "name": "program_uid", "value": "", "type": "query", "description": "Only return Products belonging to the submitted Program" } ] }, "docs": "Products filtered by the given parameters.\n" }, { "info": { "name": "Get a single Product", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/products/:uid", "headers": [ { "name": "x-trace-id", "value": "" } ] }, "docs": "Retrieve overall status about a Product as well as its configuration, availability, and any associated metadata." } ] }, { "info": { "name": "Customer Products", "type": "folder" }, "items": [ { "info": { "name": "List Customer Products", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/customer_products", "headers": [ { "name": "x-trace-id", "value": "" } ], "params": [ { "name": "program_uid", "value": "", "type": "query", "description": "Only return Customer Products belonging to the submitted Program" }, { "name": "product_uid", "value": "", "type": "query", "description": "Only return Customer Products belonging to the submitted Product" }, { "name": "customer_uid", "value": "", "type": "query", "description": "Filter by Customer. Multiple values are allowed, e.g. `customer_uid[]=uKxmLxUEiSj5h4M3&customer_uid[]=y9reyPMNEWuuYSC1`.\n" } ] }, "docs": "List Customers and the Products they have onboarded onto, filtered by the given parameters.\n" }, { "info": { "name": "Onboard Customer onto a Product", "type": "http" }, "http": { "method": "POST", "url": "https://sandbox.newline53.com/api/v1/customer_products", "headers": [ { "name": "x-trace-id", "value": "" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Submit a request to onboard a Customer onto a new product. Ensure all required Customer details have been provided with [Adjust Customer Data](https://developers.newline53.com/reference/put_customers-uid) before making this request. An error will be returned if details are missing or invalid.\n\nThe request to onboard a Customer serves as explicit confirmation from you that the Customer is ready for account opening. This event initiates the KYC/AML verification process and account opening in your " }, { "info": { "name": "Get a single Customer Product", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/customer_products/:uid", "headers": [ { "name": "x-trace-id", "value": "" } ] }, "docs": "Retrieves a single Customer Product resource along with its associated Customer and Product" } ] }, { "info": { "name": "Custodial Accounts", "type": "folder" }, "items": [ { "info": { "name": "List Custodial Accounts", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/custodial_accounts", "headers": [ { "name": "x-trace-id", "value": "" } ], "params": [ { "name": "customer_uid", "value": "", "type": "query", "description": "Filter by Customer. Multiple values are allowed, e.g. `customer_uid[]=uKxmLxUEiSj5h4M3&customer_uid[]=y9reyPMNEWuuYSC1`.\n" }, { "name": "external_uid", "value": "", "type": "query", "description": "A unique, immutable id provided by the Client. Multiple values are allowed e.g. `external_uid[]=uKxmLxUEiSj5h4M3&external_uid[]=y9reyPMNEWuuYSC1`." }, { "name": "limit", "value": "", "type": "query", "description": "Maximum number of items to retrieve. This filter is automatically applied with the default value if not given.\n" }, { "name": "offset", "value": "", "type": "query", "description": "Index of the items to start retrieving from" }, { "name": "liability", "value": "", "type": "query", "description": "Filter by liability or asset" }, { "name": "type", "value": "", "type": "query" } ] }, "docs": "Retrieve a list of Custodial Accounts held by Fifth Third Bank for onboarded Customers. This endpoint returns active and archived accounts along with their balances.\n" }, { "info": { "name": "Get a single Custodial Account", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/custodial_accounts/:uid", "headers": [ { "name": "x-trace-id", "value": "" } ] }, "docs": "Returns a single Custodial Account resource along with supporting details and account balances.\n" }, { "info": { "name": "List Custodial Account Closing Balances", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/custodial_account_closing_balances", "headers": [ { "name": "x-trace-id", "value": "" } ], "params": [ { "name": "custodial_account_uid", "value": "", "type": "query", "description": "Filter by Custodial Account" }, { "name": "custodial_account_external_uid", "value": "", "type": "query", "description": "Filter by Custodial Account External. Multiple values are allowed, e.g. `custodial_account_external_uid[]=4XkJnsfHsuqrxmeX&custodial_account_external_uid[]=exMDShw6yM3NHLYV`.\n" }, { "name": "limit", "value": "", "type": "query", "description": "Maximum number of items to retrieve. This filter is automatically applied with the default value if not given.\n" }, { "name": "offset", "value": "", "type": "query", "description": "Index of the items to start retrieving from" }, { "name": "net_usd_closing_balance_as_of", "value": "", "type": "query" }, { "name": "net_usd_closing_balance_before", "value": "", "type": "query" }, { "name": "net_usd_closing_balance_after", "value": "", "type": "query" } ] }, "docs": "Retrieves a paginated list of Custodial Account Closing balances, filtered by various parameters." }, { "info": { "name": "Get a single Custodial Account Closing Balance", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/custodial_account_closing_balances/:uid", "headers": [ { "name": "x-trace-id", "value": "" } ] }, "docs": "Get a single Custodial Account Closing Balance" } ] }, { "info": { "name": "Synthetic Accounts", "type": "folder" }, "items": [ { "info": { "name": "List Synthetic Account Types", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/synthetic_account_types", "headers": [ { "name": "x-trace-id", "value": "" } ], "params": [ { "name": "program_uid", "value": "", "type": "query", "description": "Only list Synthetic Account Types that are available to be used by the given Program" }, { "name": "limit", "value": "", "type": "query", "description": "Maximum number of items to retrieve. This filter is automatically applied with the default value if not given.\n" }, { "name": "offset", "value": "", "type": "query", "description": "Index of the items to start retrieving from" } ] }, "docs": "Retrieve a list of Synthetic Account Types available for use in your Program. These types define the behavior and characteristics of Synthetic Accounts." }, { "info": { "name": "Get a Single Synthetic Account Type", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/synthetic_account_types/:uid", "headers": [ { "name": "x-trace-id", "value": "" } ] }, "docs": "Returns a single Synthetic Account Type resource along with supporting details.\n\nEnables changes to the Synthetic Account fields, including the Master Synthetic Account. The Master Synthetic Account remains identifiable by the `master_account` flag stored with the Synthetic Account record." }, { "info": { "name": "List Synthetic Accounts", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/synthetic_accounts", "headers": [ { "name": "x-trace-id", "value": "" } ], "params": [ { "name": "customer_uid", "value": "", "type": "query", "description": "Filter by Customer. Multiple values are allowed, e.g. `customer_uid[]=uKxmLxUEiSj5h4M3&customer_uid[]=y9reyPMNEWuuYSC1`.\n" }, { "name": "external_uid", "value": "", "type": "query", "description": "A unique, immutable id provided by the Client. Multiple values are allowed e.g. `external_uid[]=uKxmLxUEiSj5h4M3&external_uid[]=y9reyPMNEWuuYSC1`." }, { "name": "pool_uid", "value": "", "type": "query", "description": "Filter by pool. Multiple values are allowed, e.g. `pool_uid[]=wTSMX1GubP21ev2h&pool_uid[]=7UvkHn3Ss9AbWe2c`.\n" }, { "name": "limit", "value": "", "type": "query", "description": "Maximum number of items to retrieve. This filter is automatically applied with the default value if not given.\n" }, { "name": "offset", "value": "", "type": "query", "description": "Index of the items to start retrieving from" }, { "name": "synthetic_account_type_uid", "value": "", "type": "query", "description": "Filter by Synthetic Account Type" }, { "name": "synthetic_account_category", "value": "", "type": "query", "description": "Filter by Synthetic Account Category" }, { "name": "liability", "value": "", "type": "query", "description": "Filter by liability or asset" }, { "name": "status", "value": "", "type": "query" }, { "name": "sort", "value": "", "type": "query" } ] }, "docs": "Retrieve a list of Synthetic Accounts associated with the specified Customer and Pool. This endpoint supports filtering by account type, category, status, and sorting by balance or name.\n" }, { "info": { "name": "Create a New Synthetic Account", "type": "http" }, "http": { "method": "POST", "url": "https://sandbox.newline53.com/api/v1/synthetic_accounts", "headers": [ { "name": "x-trace-id", "value": "" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Create a new Synthetic Account in the Pool with the provided specification.\n\nExternal Synthetic Accounts are counterparty records that represent accounts at external financial institutions. They contain all the necessary information to execute a payment. For specifics about each payment rail's requirements, refer to our [Payment Rails](https://developers.newline53.com/docs/payment-rails) guides." }, { "info": { "name": "Get a single Synthetic Account", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/synthetic_accounts/:uid", "headers": [ { "name": "x-trace-id", "value": "" } ] }, "docs": "Returns a single Synthetic Account resource along with supporting details and account balances.\n\nNote: Newline will suppress the `account_number` value for Synthetic Accounts in the `ach_external`, `wire_external`, and `instant_payment_external` categories. The `account_number_last_four` value will be returned in the response to help identify these Synthetic Accounts." }, { "info": { "name": "Update the Synthetic Account metadata", "type": "http" }, "http": { "method": "PUT", "url": "https://sandbox.newline53.com/api/v1/synthetic_accounts/:uid", "headers": [ { "name": "x-trace-id", "value": "" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Enables changes to the Synthetic Account fields, including the Master Synthetic Account. The Master Synthetic Account remains identifiable by the `master_account` flag stored with the Synthetic Account record." }, { "info": { "name": "Archive a Synthetic Account", "type": "http" }, "http": { "method": "DELETE", "url": "https://sandbox.newline53.com/api/v1/synthetic_accounts/:uid", "headers": [ { "name": "x-trace-id", "value": "" } ] }, "docs": "In order to archive a Synthetic Account, the account must:\n\n- not be a Master Synthetic Account i.e. `master_account` must be false.\n- have zero balance.\n- have no pending Transfers.\n\nMaster Synthetic Accounts are archived when the Program Customer is archived ([DELETE /customers/:uid](https://developers.newline53.com/reference/delete_customers-uid))." }, { "info": { "name": "List Synthetic Account Closing Balances", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/synthetic_account_closing_balances", "headers": [ { "name": "x-trace-id", "value": "" } ], "params": [ { "name": "synthetic_account_uid", "value": "", "type": "query", "description": "Filter by Synthetic Account. Multiple values are allowed, e.g. `synthetic_account_uid[]=4XkJnsfHsuqrxmeX&synthetic_account_uid[]=exMDShw6yM3NHLYV`.\n" }, { "name": "synthetic_account_external_uid", "value": "", "type": "query", "description": "Filter by Synthetic Account External. Multiple values are allowed, e.g. `synthetic_account_external_uid[]=4XkJnsfHsuqrxmeX&synthetic_account_external_uid[]=exMDShw6yM3NHLYV`.\n" }, { "name": "limit", "value": "", "type": "query", "description": "Maximum number of items to retrieve. This filter is automatically applied with the default value if not given.\n" }, { "name": "offset", "value": "", "type": "query", "description": "Index of the items to start retrieving from" }, { "name": "net_usd_closing_balance_as_of", "value": "", "type": "query" }, { "name": "net_usd_closing_balance_before", "value": "", "type": "query" }, { "name": "net_usd_closing_balance_after", "value": "", "type": "query" } ] }, "docs": "Retrieves a paginated list of Synthetic Account Closing balances, filtered by various parameters." }, { "info": { "name": "Get a single Synthetic Account Closing Balance", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/synthetic_account_closing_balances/:uid", "headers": [ { "name": "x-trace-id", "value": "" } ] }, "docs": "Get a single Synthetic Account Closing Balance" } ] }, { "info": { "name": "Transfers", "type": "folder" }, "items": [ { "info": { "name": "List Transfers", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/transfers", "headers": [ { "name": "x-trace-id", "value": "" } ], "params": [ { "name": "customer_uid", "value": "", "type": "query", "description": "Filter by Customer. Multiple values are allowed, e.g. `customer_uid[]=uKxmLxUEiSj5h4M3&customer_uid[]=y9reyPMNEWuuYSC1`.\n" }, { "name": "external_uid", "value": "", "type": "query", "description": "A unique, immutable id provided by the Client. Multiple values are allowed e.g. `external_uid[]=uKxmLxUEiSj5h4M3&external_uid[]=y9reyPMNEWuuYSC1`." }, { "name": "pool_uid", "value": "", "type": "query", "description": "Filter by pool. Multiple values are allowed, e.g. `pool_uid[]=wTSMX1GubP21ev2h&pool_uid[]=7UvkHn3Ss9AbWe2c`.\n" }, { "name": "synthetic_account_uid", "value": "", "type": "query", "description": "Filter by Synthetic Account. Multiple values are allowed, e.g. `synthetic_account_uid[]=4XkJnsfHsuqrxmeX&synthetic_account_uid[]=exMDShw6yM3NHLYV`.\n" }, { "name": "limit", "value": "", "type": "query", "description": "Maximum number of items to retrieve. This filter is automatically applied with the default value if not given.\n" }, { "name": "offset", "value": "", "type": "query", "description": "Index of the items to start retrieving from" }, { "name": "sort", "value": "", "type": "query" } ] }, "docs": "Retrieves a list of Transfers filtered by the given parameters. Transfers facilitate the movement of assets between accounts, enabling transactions such as payments and withdrawals.\n" }, { "info": { "name": "Initiate a Transfer", "type": "http" }, "http": { "method": "POST", "url": "https://sandbox.newline53.com/api/v1/transfers", "headers": [ { "name": "x-trace-id", "value": "" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Attempt to initiate a Transfer between two Synthetic Accounts. Before the Transfer will be initiated, several checks will be performed to ensure there is sufficient balance in the source account and that the initiating Customer has all the necessary access to both Synthetic Accounts.\n\nThe Synthetic Accounts allowed in a Transfer request are listed below\n\n- between a liability Synthetic Account in the `general` category and a Synthetic Account in the `ach_external`, `wire_external`, or `instant_p" }, { "info": { "name": "Get a single Transfer", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/transfers/:uid", "headers": [ { "name": "x-trace-id", "value": "" } ] }, "docs": "Retrieves a single Transfer resource along with its details, including status, participating accounts, and associated Transactions.\n\nFilter parameters are not case sensitive but will only return exact matches." }, { "info": { "name": "Cancel a Transfer", "type": "http" }, "http": { "method": "PUT", "url": "https://sandbox.newline53.com/api/v1/transfers/:uid/cancel", "headers": [ { "name": "x-trace-id", "value": "" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Transfers must be canceled by the originating Customer (or Authorized Representative).\n\nTransfers can only enter the canceled state if Newline receives a request while the Transfer is in `queued` or `pending states`.\n\nA cancellation request during the `pending` state is not guaranteed, as this state may include payment execution. At that stage, a cancel request will result in an error." } ] }, { "info": { "name": "Sandbox", "type": "folder" }, "items": [ { "info": { "name": "Simulate a Transaction", "type": "http" }, "http": { "method": "POST", "url": "https://sandbox.newline53.com/api/v1/sandbox/mock_transactions", "headers": [ { "name": "x-trace-id", "value": "" } ], "body": { "type": "json", "data": "{}" } }, "docs": "> **Note** This endpoint is only available in Sandbox.\n\nCreate a Transaction by simulating the attributes that would be expected from reading an actual transaction received from a third party system. The simulated Transaction will appear in the respective [Transaction list](https://developers.newline53.com/reference/get_transactions) after it is successfully processed.\n\nTransactions can be simulated against either a Synthetic Account, or a VRN that is created and mapped to a Synthetic Account." } ] }, { "info": { "name": "Transactions", "type": "folder" }, "items": [ { "info": { "name": "List Transactions", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/transactions", "headers": [ { "name": "x-trace-id", "value": "" } ], "params": [ { "name": "customer_uid", "value": "", "type": "query", "description": "Filter by Customer. Multiple values are allowed, e.g. `customer_uid[]=uKxmLxUEiSj5h4M3&customer_uid[]=y9reyPMNEWuuYSC1`.\n" }, { "name": "pool_uid", "value": "", "type": "query", "description": "Filter by pool. Multiple values are allowed, e.g. `pool_uid[]=wTSMX1GubP21ev2h&pool_uid[]=7UvkHn3Ss9AbWe2c`.\n" }, { "name": "source_synthetic_account_uid", "value": "", "type": "query", "description": "Filter by source Synthetic Account. Multiple values are allowed, e.g. `source_synthetic_account_uid[]=4XkJnsfHsuqrxmeX&source_synthetic_account_uid[]=aeD4RMVyTKaspEzj`.\n" }, { "name": "destination_synthetic_account_uid", "value": "", "type": "query", "description": "Filter by destination Synthetic Account. Multiple values are allowed, e.g. `destination_synthetic_synthetic_uid[]=exMDShw6yM3NHLYV&destination_synthetic_account_uid[]=1WVbRrp1s1MvTaAe`.\n" }, { "name": "synthetic_account_uid", "value": "", "type": "query", "description": "Filter by Synthetic Account, source or destination. Multiple values are allowed, e.g. `synthetic_account_uid[]=4XkJnsfHsuqrxmeX&synthetic_account_uid[]=exMDShw6yM3NHLYV`.\n" }, { "name": "type", "value": "", "type": "query", "description": "Filter by type. Multiple values are allowed, e.g. `type[]=dispute&type[]=fee`.\n" }, { "name": "has_return", "value": "", "type": "query", "description": "Filter by return. Only transactions that have returns (present or absend) to be included in the results.\n" }, { "name": "show_denied_auths", "value": "", "type": "query", "description": "Causes transactions with a status of `denied` (suppressed by default) to be included in the results.\n" }, { "name": "show_expired", "value": "", "type": "query", "description": "Causes transactions with a status of `expired` (suppressed by default) to be included in the results.\n" }, { "name": "status", "value": "", "type": "query", "description": "Filter by status. Multiple values are allowed, e.g. `status[]=queued&status[]=pending`.\n" }, { "name": "search_description", "value": "", "type": "query", "description": "Attempts to search for the provided string in the description field. '*' can be used as a wildcard at the beginning or end of the string. Any record with a match will be returned.\n" }, { "name": "include_zero", "value": "", "type": "query", "description": "Causes transactions with a `us_dollar_amount = 0` (suppressed by default) to be included in the results.\n" }, { "name": "limit", "value": "", "type": "query", "description": "Maximum number of items to retrieve. This filter is automatically applied with the default value if not given.\n" }, { "name": "offset", "value": "", "type": "query", "description": "Index of the items to start retrieving from" }, { "name": "sort", "value": "", "type": "query" }, { "name": "created_at_after", "value": "", "type": "query", "description": "Return only results with `created_at` after the provided ISO 8601 date or timestamp\n" }, { "name": "created_at_before", "value": "", "type": "query", "description": "Return only results with `created_at` before the provided ISO 8601 date or timestamp\n" }, { "name": "settled_at_after", "value": "", "type": "query", "description": "Return only transactions with `settled_at` after the provided ISO 8601 timestamp\n" }, { "name": "settled_at_before", "value": "", "type": "query", "description": "Return only transactions with `settled_at` before the provided ISO 8601 timestamp\n" }, { "name": "initial_action_at_after", "value": "", "type": "query", "description": "Return only transactions with `initial_action_at` after the provided ISO 8601 timestamp\n" }, { "name": "initial_action_at_before", "value": "", "type": "query", "description": "Return only transactions with `initial_action_at` before the provided ISO 8601 timestamp\n" }, { "name": "settled_index_after", "value": "", "type": "query", "description": "Return only transactions with `settled_index` after the provided value\n" }, { "name": "settled_index_before", "value": "", "type": "query", "description": "Return only transactions with `settled_index` before the provided value\n" }, { "name": "id_after", "value": "", "type": "query", "description": "Return only transactions with `id` after the provided value\n" }, { "name": "id_before", "value": "", "type": "query", "description": "Return only transactions with `id` before the provided value\n" } ] }, "docs": "Retrieves a list of Transactions. Transactions representing expired authorizations or expired reversals are suppressed by default." }, { "info": { "name": "Get a single Transaction", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/transactions/:uid", "headers": [ { "name": "x-trace-id", "value": "" } ] }, "docs": "Retrieves a single Transaction resource along with its details, including amount, origin, destination, and status." }, { "info": { "name": "Approve or deny a transaction", "type": "http" }, "http": { "method": "PUT", "url": "https://sandbox.newline53.com/api/v1/transactions/:uid/authorize", "headers": [ { "name": "x-trace-id", "value": "" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Approves or denies a pending Transaction. This endpoint is used to explicitly authorize or reject a Transaction before it is executed." }, { "info": { "name": "List Transaction Events", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/transaction_events", "headers": [ { "name": "x-trace-id", "value": "" } ], "params": [ { "name": "source_custodial_account_uid", "value": "", "type": "query" }, { "name": "destination_custodial_account_uid", "value": "", "type": "query" }, { "name": "custodial_account_uid", "value": "", "type": "query" }, { "name": "type", "value": "", "type": "query" }, { "name": "transaction_uid", "value": "", "type": "query", "description": "Filter by Transaction. Multiple values are allowed, e.g. `transaction_uid[]=SMwKC1osz77DTEiu&transaction_uid[]=f1UDvUVNnXTKtgxu`.\n" }, { "name": "limit", "value": "", "type": "query", "description": "Maximum number of items to retrieve. This filter is automatically applied with the default value if not given.\n" }, { "name": "offset", "value": "", "type": "query", "description": "Index of the items to start retrieving from" }, { "name": "sort", "value": "", "type": "query" } ] }, "docs": "Retrieves a list of Transaction Events. Transaction Events represent the steps required to complete a Transaction and can be used to track its progress or review its history." }, { "info": { "name": "Get a single Transaction Event", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/transaction_events/:uid", "headers": [ { "name": "x-trace-id", "value": "" } ] }, "docs": "Retrieves a single Transaction Event resource, including its status, timestamps, and associated Transaction details." }, { "info": { "name": "List Synthetic Line Items", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/synthetic_line_items", "headers": [ { "name": "x-trace-id", "value": "" } ], "params": [ { "name": "customer_uid", "value": "", "type": "query", "description": "Filter by Customer. Multiple values are allowed, e.g. `customer_uid[]=uKxmLxUEiSj5h4M3&customer_uid[]=y9reyPMNEWuuYSC1`.\n" }, { "name": "pool_uid", "value": "", "type": "query", "description": "Filter by pool. Multiple values are allowed, e.g. `pool_uid[]=wTSMX1GubP21ev2h&pool_uid[]=7UvkHn3Ss9AbWe2c`.\n" }, { "name": "synthetic_account_uid", "value": "", "type": "query", "description": "Filter by Synthetic Account. Multiple values are allowed, e.g. `synthetic_account_uid[]=4XkJnsfHsuqrxmeX&synthetic_account_uid[]=exMDShw6yM3NHLYV`.\n" }, { "name": "limit", "value": "", "type": "query", "description": "Maximum number of items to retrieve. This filter is automatically applied with the default value if not given.\n" }, { "name": "offset", "value": "", "type": "query", "description": "Index of the items to start retrieving from" }, { "name": "transaction_uid", "value": "", "type": "query", "description": "Filter by Transaction. Multiple values are allowed, e.g. `transaction_uid[]=SMwKC1osz77DTEiu&transaction_uid[]=f1UDvUVNnXTKtgxu`.\n" }, { "name": "status", "value": "", "type": "query" }, { "name": "sort", "value": "", "type": "query" } ] }, "docs": "Retrieves a list of Synthetic Line Items. These represent individual debits and credits associated with Synthetic Accounts as part of a Transaction Event." }, { "info": { "name": "Get a single Synthetic Line Item", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/synthetic_line_items/:uid", "headers": [ { "name": "x-trace-id", "value": "" } ] }, "docs": "Retrieves a single Synthetic Line Item resource, including the amount, account, and associated Transaction Event." }, { "info": { "name": "List Custodial Line Items", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/custodial_line_items", "headers": [ { "name": "x-trace-id", "value": "" } ], "params": [ { "name": "customer_uid", "value": "", "type": "query", "description": "Filter by Customer. Multiple values are allowed, e.g. `customer_uid[]=uKxmLxUEiSj5h4M3&customer_uid[]=y9reyPMNEWuuYSC1`.\n" }, { "name": "custodial_account_uid", "value": "", "type": "query" }, { "name": "status", "value": "", "type": "query", "description": "Filter by status. Multiple values are allowed, e.g. `status[]=pending&status[]=settled`.\n" }, { "name": "us_dollar_amount_max", "value": "", "type": "query", "description": "Return any records having a us_dollar_amount at or below us_dollar_amount_max.\n" }, { "name": "us_dollar_amount_min", "value": "", "type": "query", "description": "Return any records having a us_dollar_amount at or above us_dollar_amount_min.\n" }, { "name": "transaction_event_uid", "value": "", "type": "query", "description": "Filter by Transaction Event. Multiple values are allowed, e.g. `transaction_event_uid[]=MB2yqBrm3c4bUbou&transaction_event_uid[]=N5tuy12zZzB9bftb`.\n" }, { "name": "transaction_uid", "value": "", "type": "query", "description": "Filter by Transaction. Multiple values are allowed, e.g. `transaction_uid[]=SMwKC1osz77DTEiu&transaction_uid[]=f1UDvUVNnXTKtgxu`.\n" }, { "name": "limit", "value": "", "type": "query", "description": "Maximum number of items to retrieve. This filter is automatically applied with the default value if not given.\n" }, { "name": "offset", "value": "", "type": "query", "description": "Index of the items to start retrieving from" }, { "name": "sort", "value": "", "type": "query" } ] }, "docs": "Retrieves a list of Custodial Line Items. These represent individual debits and credits associated with Custodial Accounts as part of a Transaction Event." }, { "info": { "name": "Get a single Custodial Line Item", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/custodial_line_items/:uid", "headers": [ { "name": "x-trace-id", "value": "" } ] }, "docs": "Retrieves a single Custodial Line Item resource, including the amount, account, and associated Transaction Event." } ] }, { "info": { "name": "Virtual Reference Numbers", "type": "folder" }, "items": [ { "info": { "name": "List Virtual Reference Numbers", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/virtual_reference_numbers", "headers": [ { "name": "x-trace-id", "value": "" } ], "params": [ { "name": "instant_payment_rail_registration_status", "value": "", "type": "query" }, { "name": "status", "value": "", "type": "query" }, { "name": "synthetic_account_uid", "value": "", "type": "query" }, { "name": "virtual_reference_number", "value": "", "type": "query" } ] }, "docs": "Retrieves a list of Virtual Reference Numbers (VRNs) associated with the specified Synthetic Account. Supports filtering by status and other attributes.\n" }, { "info": { "name": "Create a new Virtual Reference Number", "type": "http" }, "http": { "method": "POST", "url": "https://sandbox.newline53.com/api/v1/virtual_reference_numbers", "headers": [ { "name": "x-trace-id", "value": "" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Creates a new Virtual Reference Number (VRN) for the specified Synthetic Account." }, { "info": { "name": "Get a single Virtual Reference Number", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/virtual_reference_numbers/:uid", "headers": [ { "name": "x-trace-id", "value": "" } ] }, "docs": "Retrieves a single Virtual Reference Number resource along with its details, including status, linked Synthetic Account, and registration metadata." }, { "info": { "name": "Edit a Virtual Reference Number", "type": "http" }, "http": { "method": "PUT", "url": "https://sandbox.newline53.com/api/v1/virtual_reference_numbers/:uid", "headers": [ { "name": "x-trace-id", "value": "" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Updates the metadata of an existing Virtual Reference Number. This may include changes to labels, descriptions, or Instant Payment registration settings." }, { "info": { "name": "Archive a single Virtual Reference Number", "type": "http" }, "http": { "method": "DELETE", "url": "https://sandbox.newline53.com/api/v1/virtual_reference_numbers/:uid", "headers": [ { "name": "x-trace-id", "value": "" } ] }, "docs": "Archives a Virtual Reference Number, removing it from active use. Archived VRNs cannot be used for incoming payments or reconciliation." }, { "info": { "name": "Lock a single Virtual Reference Number", "type": "http" }, "http": { "method": "PUT", "url": "https://sandbox.newline53.com/api/v1/virtual_reference_numbers/:uid/lock", "headers": [ { "name": "x-trace-id", "value": "" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Locks a Virtual Reference Number to prevent new transactions or usage. This is typically used for fraud prevention or temporary deactivation." }, { "info": { "name": "Unlock a single Virtual Reference Number", "type": "http" }, "http": { "method": "PUT", "url": "https://sandbox.newline53.com/api/v1/virtual_reference_numbers/:uid/unlock", "headers": [ { "name": "x-trace-id", "value": "" } ] }, "docs": "Unlocks a previously locked Virtual Reference Number, restoring its ability to receive payments and participate in reconciliation workflows." } ] }, { "info": { "name": "Returns", "type": "folder" }, "items": [ { "info": { "name": "List Returns", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/returns", "headers": [ { "name": "x-trace-id", "value": "" } ], "params": [ { "name": "customer_uid", "value": "", "type": "query" }, { "name": "requestor_type", "value": "", "type": "query" } ] }, "docs": "Retrieves a list of return transactions. You can filter the results based on parameters such as status, date, and transaction type. This endpoint is available in Sandbox and Production environments.\n" }, { "info": { "name": "Create a new Return", "type": "http" }, "http": { "method": "POST", "url": "https://sandbox.newline53.com/api/v1/returns", "headers": [ { "name": "x-trace-id", "value": "" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Initiates a Return of an ACH or wire payment.\nA full ACH addenda is not available for ACH returns because an addenda record is used for the return itself; the `addenda_info` field contains the remaining available space.\nFor wire returns, the `wire_instruction` field is limited to 70 characters because Newline prefixes the instructions with the original wire transaction identifier (e.g., IMAD).\n" }, { "info": { "name": "Get a single Return", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/returns/:uid", "headers": [ { "name": "x-trace-id", "value": "" } ] }, "docs": "Retrieves details about a specific return transaction, including its status, original transaction reference, and any associated metadata." } ] }, { "info": { "name": "Combined Transfers", "type": "folder" }, "items": [ { "info": { "name": "List Combined Transfers", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/combined_transfers", "headers": [ { "name": "x-trace-id", "value": "" } ], "params": [ { "name": "limit", "value": "", "type": "query", "description": "Maximum number of items to retrieve. This filter is automatically applied with the default value if not given.\n" }, { "name": "offset", "value": "", "type": "query", "description": "Index of the items to start retrieving from" }, { "name": "created_at_after", "value": "", "type": "query", "description": "Return only results with `created_at` after the provided ISO 8601 date or timestamp\n" }, { "name": "created_at_before", "value": "", "type": "query", "description": "Return only results with `created_at` before the provided ISO 8601 date or timestamp\n" }, { "name": "external_uid", "value": "", "type": "query", "description": "A unique, immutable id provided by the Client. Multiple values are allowed e.g. `external_uid[]=uKxmLxUEiSj5h4M3&external_uid[]=y9reyPMNEWuuYSC1`." }, { "name": "status", "value": "", "type": "query" }, { "name": "synthetic_account_external_uid", "value": "", "type": "query", "description": "A unique, immutable id provided by the Client. Multiple values are allowed e.g. `synthetic_account_external_uid[]=uKxmLxUEiSj5h4M3&synthetic_account_external_uid[]=y9reyPMNEWuuYSC1`.\n" }, { "name": "synthetic_account_pool_uid", "value": "", "type": "query", "description": "Filter by Synthetic Account Pool. Multiple values are allowed, e.g. `synthetic_account_pool_uid[]=wTSMX1GubP21ev2h&synthetic_account_pool_uid[]=7UvkHn3Ss9AbWe2c`.\n" }, { "name": "synthetic_account_uid", "value": "", "type": "query", "description": "Newline-generated unique id of the associated Synthetic Account. Multiple values are allowed, e.g. `synthetic_account_uid[]=wTSMX1GubP21ev2h&synthetic_account_uid[]=7UvkHn3Ss9AbWe2c`.\n" }, { "name": "transfer_customer_uid", "value": "", "type": "query", "description": "Filter by Synthetic Transfer Customer. Multiple values are allowed, e.g. `transfer_customer_uid[]=wTSMX1GubP21ev2h&transfer_customer_uid[]=7UvkHn3Ss9AbWe2c`.\n" }, { "name": "transfer_external_uid", "value": "", "type": "query", "description": "A unique, immutable id provided by the Client. Multiple values are allowed e.g. `transfer_external_uid[]=uKxmLxUEiSj5h4M3&transfer_external_uid[]=y9reyPMNEWuuYSC1`.\n" }, { "name": "transfer_uid", "value": "", "type": "query", "description": "Newline-generated unique id of the associated Synthetic Transfer. Multiple values are allowed, e.g. `transfer_uid[]=wTSMX1GubP21ev2h&transfer_uid[]=7UvkHn3Ss9AbWe2c`.\n" } ] }, "docs": "Retrieves a list of Combined Transfers. These represent transactions where both a counterparty Synthetic Account and a Transfer were created in a single API call. You can filter results by status and other parameters.\n" }, { "info": { "name": "Create a new Combined Transfer", "type": "http" }, "http": { "method": "POST", "url": "https://sandbox.newline53.com/api/v1/combined_transfers", "headers": [ { "name": "x-trace-id", "value": "" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Creates a Combined Transfer by simultaneously creating a counterparty Synthetic Account and initiating a Transfer. This streamlines asset movement by reducing the number of steps required to set up and execute a transaction.\n" }, { "info": { "name": "Get a single Combined Transfer", "type": "http" }, "http": { "method": "GET", "url": "https://sandbox.newline53.com/api/v1/combined_transfers/:uid", "headers": [ { "name": "x-trace-id", "value": "" } ] }, "docs": "Retrieves details about a specific Combined Transfer, including the status, participating accounts, and associated metadata. Statuses include `queued`, `pending`, `failed`, and `completed`." } ] } ], "bundled": true }