### Set API Key Environment Variable Source: https://docs.synctera.com/reference/need-to-know Set the 'apikey' environment variable to store your API key for use in guides and examples. This simplifies authentication in subsequent commands. ```shell export apikey=476d901b4-a264a79-9db9-96d3dfaafb732 ``` -------------------------------- ### Account Product Response Source: https://docs.synctera.com/docs/interest-guide This is an example response after successfully creating an account product with interest rate configurations. ```json { "accrual_payout_schedule": "MONTHLY", "calculation_method": "COMPOUNDED_MONTHLY", "description": "Sample interest request body", "id": "52c80838-90b3-4afb-b3ff-98a97b5df96b", "product_type": "INTEREST", "rates": [ { "accrual_period": "DAILY", "rate": 100, "valid_from": "2021-06-01", "valid_to": "2021-06-15" }, { "accrual_period": "DAILY", "rate": 100, "valid_from": "2021-06-15" } ] } ``` -------------------------------- ### List All Disclosure Records Source: https://docs.synctera.com/docs/record-disclosure-acceptance Use this endpoint to get a paginated list of all disclosure records across your customer base. No specific setup is required beyond standard API authentication. ```bash GET /v0/disclosures ``` -------------------------------- ### Example account creation response Source: https://docs.synctera.com/docs/create-accounts-guide This is an example of the JSON response received after successfully creating an account. It includes details like account number, balances, and status. ```json { "access_status": "ACTIVE", "access_status_last_updated_time": "2022-10-06T14:03:54.962704Z", "account_number": "790954299503", "account_number_masked": "790*****9503", "account_type": "SAVING", "balances": [ { "balance": 0, "type": "ACCOUNT_BALANCE" }, { "balance": 0, "type": "AVAILABLE_BALANCE" } ], "bank_routing": "112233445", "creation_time": "2022-10-06T14:03:54.963162Z", "currency": "USD", "customer_ids": [ "110acc45-0b53-4d21-b624-29f88879c6a0" ], "customer_type": "PERSONAL", "id": "ce439ca4-8eb6-45e6-955c-46441af33770", "is_account_pool": false, "is_ach_enabled": false, "is_card_enabled": false, "is_p2p_enabled": false, "is_wire_enabled": false, "last_updated_time": "2022-10-06T14:03:54.963162Z", "status": "ACTIVE_OR_DISBURSED" } ``` -------------------------------- ### Get a webhook Source: https://docs.synctera.com/llms.txt Get a webhook. ```APIDOC ## GET /webhooks/{webhook_id} ### Description Get a webhook. ### Method GET ### Endpoint /webhooks/{webhook_id} ``` -------------------------------- ### Complete HTML Example for External Card Creation Source: https://docs.synctera.com/docs/link-external-cards This HTML example shows how to embed the external card creation widget, fetch a widget token from a backend API, and handle success and failure events. ```html External Card Creation Widget Example

Add Payment Card

``` -------------------------------- ### Get Reward Source: https://docs.synctera.com/llms.txt Get a reward by ID. ```APIDOC ## GET /rewards/{reward_id} ### Description Retrieves a specific reward by its unique identifier. ### Method GET ### Endpoint /rewards/{reward_id} ### Parameters #### Path Parameters - **reward_id** (string) - Required - The unique identifier of the reward. ``` -------------------------------- ### Initialize Marqeta.js Bootstrap Source: https://docs.synctera.com/docs/card-widgets Call `window.marqeta.bootstrap` with your client access token and component configurations to render the card data. This function creates iframes within the specified DOM elements. ```javascript window.marqeta.bootstrap({ clientAccessToken: clientAccessToken, integrationType: "custom", component: { showPan: { cardPan: { domId: "display-card-pan", format: true }, cardExp: { domId: "display-card-exp", format: true }, cardCvv: { domId: "display-card-cvv" }, }, }, callbackEvents: { onSuccess: () => console.log("Widget loaded!"), onFailure: () => console.warn("Widget failed to load."), }, }); ``` -------------------------------- ### Get relationship Source: https://docs.synctera.com/llms.txt Get relationship by ID. ```APIDOC ## GET /relationships/{relationship_id} ### Description Retrieves a specific relationship by its unique identifier. ### Method GET ### Endpoint /relationships/{relationship_id} ### Parameters #### Path Parameters - **relationship_id** (string) - Required - The unique identifier of the relationship. ``` -------------------------------- ### Create a Customer using cURL Source: https://docs.synctera.com/docs/dev-setup Use this cURL command to create a new customer in the Synctera sandbox. Ensure you replace {API_KEY} with your actual API key and provide the required customer details in JSON format. ```bash curl -X POST https://api-sandbox.synctera.com/v0/customers \ -H 'Authorization: Bearer {API_KEY}' \ -H 'Content-Type: application/json; charset=utf-8' \ --data-binary @- << EOF { "first_name": "Jane", "last_name": "Doe", "middle_name": "Fawn", "legal_address": { "default_address_flg": true, "type": "home", "house_number": "781", "address_line_1": "Street Rd.", "address_line_2": "Apartment 32", "city": "Centerville", "state": "CO", "postal_code": "40993", "country_code": "US" }, "shipping_address": { "default_address_flg": false, "type": "work", "house_number": "485", "address_line_1": "Boulevard Ave.", "city": "Centerville", "state": "CO", "postal_code": "40995", "country_code": "US" }, "dob": "2000-01-01", "ssn": "123-45-6789", "email": "DeerMe32@gmail.com", "mobile_phone_number": "+17520343695", "status": "ACTIVE" } EOF ``` -------------------------------- ### Create a Business Customer Source: https://docs.synctera.com/docs/kyc-kyb-verification Use the `POST /businesses` endpoint to create a new business customer record. This includes details like the business name, address, structure, and formation date. ```shell curl \ -X POST \ -H "Authorization: Bearer $apikey" \ -H 'Content-Type: application/json' \ https://api.synctera.com/v0/businesses \ --data-binary ' { "entity_name": "Your New Business", "website": "https://example.com", "phone_number": "+16045551212", "legal_address": { "address_line_1": "123 Main St.", "city": "San Francisco", "state": "CA", "postal_code": "94105", "country_code": "US" }, "structure": "CORPORATION", "formation_date": "2000-01-01", "formation_state": "DE", "ein": "99-9999999", "is_customer": true, "status": "ACTIVE" }' ``` -------------------------------- ### Get person Source: https://docs.synctera.com/llms.txt Get person by ID. ```APIDOC ## GET /persons/{person_id} ### Description Retrieves person details by their unique identifier. ### Method GET ### Endpoint /persons/{person_id} ### Parameters #### Path Parameters - **person_id** (string) - Required - The unique identifier of the person. ``` -------------------------------- ### Get Fee Source: https://docs.synctera.com/llms.txt Get a fee by ID. ```APIDOC ## GET /fees/{fee_id} ### Description Retrieves a specific fee by its unique identifier. ### Method GET ### Endpoint /fees/{fee_id} ### Parameters #### Path Parameters - **fee_id** (string) - Required - The unique identifier of the fee. ``` -------------------------------- ### Recreate Account on New Tenant Source: https://docs.synctera.com/docs/bank-migration Create a new account on the new tenant, linking it to the newly created customer ID. Record the new account ID. ```shell curl -X POST https://api.synctera.com/v0/accounts \ -H "Authorization: Bearer $new_apikey" \ -H "Content-Type: application/json" \ --data-binary '{ \ "account_type": "CHECKING", \ "customer_ids": ["def45678-0000-0000-0000-000000000002"] \ }' ``` -------------------------------- ### Get a wire by id Source: https://docs.synctera.com/llms.txt Get a wire by id. ```APIDOC ## GET /wires/{wire_id} ### Description Get a wire by id. ### Method GET ### Endpoint /wires/{wire_id} ``` -------------------------------- ### React Example for External Card Creation Source: https://docs.synctera.com/docs/link-external-cards This React example demonstrates integrating the external card creation widget. It handles script loading, token fetching, and event listening within a functional component. ```javascript import { useEffect, useState } from 'react'; function PaymentCardForm({ customerId }) { const [widgetToken, setWidgetToken] = useState(null); const [error, setError] = useState(null); useEffect(() => { // Load widget script const script = document.createElement('script'); script.type = 'module'; script.src = 'https://widgets.synctera.com/external-card-creation/v1/index.js'; document.head.appendChild(script); // Fetch widget token fetch('/api/widget-token', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ customer_id: customerId }) }) .then(res => res.json()) .then(data => setWidgetToken(data.widget_token)) .catch(err => setError(err.message)); return () => { document.head.removeChild(script); }; }, [customerId]); useEffect(() => { if (!widgetToken) return; const widget = document.querySelector('external-card-creation'); const handleSuccess = (event) => { console.log('Success:', event.detail); // Handle successful submission }; const handleFailure = (event) => { setError(event.detail.error); }; widget?.addEventListener('success', handleSuccess); widget?.addEventListener('failure', handleFailure); return () => { widget?.removeEventListener('success', handleSuccess); widget?.removeEventListener('failure', handleFailure); }; }, [widgetToken]); if (error) { return
Error: {error}
; } if (!widgetToken) { return
Loading payment form...
; } return (

Add Payment Card

); } export default PaymentCardForm; ``` -------------------------------- ### Get a statement Source: https://docs.synctera.com/llms.txt Gets a full statement by its ID. ```APIDOC ## GET /statements/{statement_id} ### Description Retrieves a full statement by its unique identifier. ### Method GET ### Endpoint /statements/{statement_id} ### Parameters #### Path Parameters - **statement_id** (string) - Required - The unique identifier of the statement. ``` -------------------------------- ### Create Interest Account Product Source: https://docs.synctera.com/docs/interest-guide Use this endpoint to create a new account product with specified interest rate configurations. Ensure date ranges for rates are continuous and non-overlapping. ```shell curl \ -X POST \ $baseurl/v0/accounts/products \ -H "Authorization: Bearer $apikey" \ -H 'Content-Type: application/json' \ --data-binary ' { "product_type": "INTEREST", "description": "Sample interest request body", "calculation_method": "COMPOUNDED_MONTHLY", "accrual_payout_schedule": "MONTHLY", "rates": [ { "valid_from": "2021-06-15", "rate": 100, "accrual_period": "DAILY" }, { "valid_from": "2021-06-01", "valid_to": "2021-06-15", "rate": 100, "accrual_period": "DAILY" } ] }' ``` -------------------------------- ### Get Spend Control Source: https://docs.synctera.com/llms.txt Get spend control details. ```APIDOC ## GET /spend-controls/{spend_control_id} ### Description Retrieves details of a specific spend control. ### Method GET ### Endpoint /spend-controls/{spend_control_id} ### Parameters #### Path Parameters - **spend_control_id** (string) - Required - The unique identifier of the spend control. ``` -------------------------------- ### Create a Personal Customer Source: https://docs.synctera.com/docs/document-verification Use the `POST /persons` endpoint to create a new customer record. This is the first step in the verification process. ```shell curl \ -X POST \ -H "Authorization: Bearer $apikey" \ -H 'Content-Type: application/json' \ https://api.synctera.com/v0/persons \ --data-binary ' { "first_name": "Christopher", "middle_name": "James", "last_name": "Albertson", "dob": "1985-06-14", "email": "chris@example.com", "phone_number": "+16045551212", "ssn": "456-78-9999", "legal_address": { "address_line_1": "123 Main St.", "city": "Beverly Hills", "state": "CA", "postal_code": "99999", "country_code": "US" }, "is_customer": true, "status": "ACTIVE" }' ``` -------------------------------- ### Get a Reward template Source: https://docs.synctera.com/llms.txt Get a reward template by ID. ```APIDOC ## GET /reward-templates/{template_id} ### Description Retrieves a specific reward template by its unique identifier. ### Method GET ### Endpoint /reward-templates/{template_id} ### Parameters #### Path Parameters - **template_id** (string) - Required - The unique identifier of the reward template. ``` -------------------------------- ### Create Business Customer Source: https://docs.synctera.com/docs/create-a-business Creates a business customer. Use `PROSPECT` status for initial creation if not all attributes are available. Set `is_customer` to `true` to enable account holding. ```shell curl \ -X POST \ $baseurl/v0/businesses \ -H "Authorization: Bearer $apikey" \ -H 'Content-Type: application/json' \ --data-binary ' \ { "status": "PROSPECT", "is_customer": true, "entity_name": "Acme Trap Company", "trade_names": [ "Acme", "Acme Corp", "CorporationID#77231" ], "formation_date": "2000-01-01", "formation_state": "NY", "structure": "CORPORATION", "phone_number": "+12124567890", "ein": "12-3456789", "legal_address": { "address_line_1": "50 Main St", "city": "New York", "state": "NY", "postal_code": "12345", "country_code": "US" } }'' ``` -------------------------------- ### Create Account Product Source: https://docs.synctera.com/reference/createaccountresourceproduct Use this endpoint to create a new account product. Ensure that rates are provided and are not empty. ```APIDOC ## POST /accounts/products ### Description Create an account product. Rates cannot be nil or empty. ### Method POST ### Endpoint /accounts/products ### Request Body - **rates** (object) - Required - An object containing rate information for the account product. ### Request Example { "rates": { "interest_rate": "0.01" } } ### Response #### Success Response (201 Created) - **id** (string) - The unique identifier for the created account product. - **rates** (object) - The rates associated with the account product. #### Response Example { "id": "prod_12345abcde", "rates": { "interest_rate": "0.01" } } ``` -------------------------------- ### Get a posted transaction Source: https://docs.synctera.com/llms.txt Get a posted transaction by its uuid. ```APIDOC ## GET /posted-transactions/{transaction_uuid} ### Description Retrieves a posted transaction by its unique identifier (UUID). ### Method GET ### Endpoint /posted-transactions/{transaction_uuid} ### Parameters #### Path Parameters - **transaction_uuid** (string) - Required - The unique identifier (UUID) of the posted transaction. ``` -------------------------------- ### Get a pending transaction Source: https://docs.synctera.com/llms.txt Get a pending transaction by its uuid. ```APIDOC ## GET /pending-transactions/{transaction_uuid} ### Description Retrieves a pending transaction by its unique identifier (UUID). ### Method GET ### Endpoint /pending-transactions/{transaction_uuid} ### Parameters #### Path Parameters - **transaction_uuid** (string) - Required - The unique identifier (UUID) of the pending transaction. ``` -------------------------------- ### Create an application Source: https://docs.synctera.com/llms.txt Creates a new application. This is a Beta endpoint, and community feedback is welcome. ```APIDOC ## POST /applications ### Description Creates a new application. This is a Beta endpoint, and community feedback is welcome. ### Method POST ### Endpoint /applications ``` -------------------------------- ### Get a Fee template Source: https://docs.synctera.com/llms.txt Get a fee template by ID. ```APIDOC ## GET /fee-templates/{template_id} ### Description Retrieves a specific fee template by its unique identifier. ### Method GET ### Endpoint /fee-templates/{template_id} ### Parameters #### Path Parameters - **template_id** (string) - Required - The unique identifier of the fee template. ``` -------------------------------- ### Example Business Object Source: https://docs.synctera.com/docs/create-a-business An example JSON response for a business object, showing details like status, verification status, and other entity information. ```json { "creation_time": "2022-04-29T21:12:55.179008Z", "ein": "12-3456789", "entity_name": "Acme Trap Company", "formation_date": "2000-01-01", "formation_state": "NY", "id": "{BUSINESS_ID}", "is_customer": true, "last_updated_time": "2022-04-29T21:19:09.521182Z", "legal_address": { "address_line_1": "50 Main St", "city": "New York", "country_code": "US", "postal_code": "12345", "state": "NY" }, "phone_number": "+12124567890", "status": "ACTIVE", "structure": "CORPORATION", "trade_names": ["Acme", "Acme Corp", "CorporationID#77231"], "verification_last_run": "2022-04-29T21:19:09.432601Z", "verification_status": "ACCEPTED" } ``` -------------------------------- ### Get a EDD Source: https://docs.synctera.com/llms.txt Get a EDD (Electronic Data Disclosure). ```APIDOC ## GET /edds/{edd_id} ### Description Retrieves a specific Electronic Data Disclosure (EDD). ### Method GET ### Endpoint /edds/{edd_id} ### Parameters #### Path Parameters - **edd_id** (string) - Required - The unique identifier of the EDD. ``` -------------------------------- ### Recreate Customer on New Tenant Source: https://docs.synctera.com/docs/bank-migration Create a customer on the new tenant using personal information from the old tenant. Record the new person ID returned in the response. ```shell curl -X POST https://api.synctera.com/v0/persons \ -H "Authorization: Bearer $new_apikey" \ -H "Content-Type: application/json" \ --data-binary '{ \ "first_name": "Jane", \ "last_name": "Smith", \ "dob": "1985-06-15", \ "email": "jane.smith@example.com", \ "phone_number": "+14155551234", \ "legal_address": { \ "street_line_1": "123 Main St", \ "city": "San Francisco", \ "state": "CA", \ "postal_code": "94105", \ "country_code": "US" \ } \ }' ``` ```json { "id": "def45678-0000-0000-0000-000000000002", "first_name": "Jane", "last_name": "Smith" } ```