### GET /currencies/{currencyCode} - Example Usage with Token Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/APIs/Sync/Token.md Demonstrates how to use the obtained security token for authenticating subsequent API calls, such as retrieving currency information. ```APIDOC ## GET /currencies/{currencyCode} ### Description An example of how to use the obtained security token to authenticate a GET request to retrieve currency information. This illustrates the general pattern for authenticated API calls. ### Method GET ### Endpoint `https://{PayFabric URL}/receivables/sync/api/{PortalName}/api/currencies/{currencyCode}` Replace the following variables: * `{PayFabric URL}`: `www.payfabric.com` (Production) or `sandbox.payfabric.com` (Sandbox). * `{PortalName}`: Your company's portal name. * `{currencyCode}`: The currency code to retrieve (e.g., USD). ### Parameters #### Path Parameters - **currencyCode** (string) - Required - The currency code to query. #### Headers - **Authorization** (string) - Required - Format: `Bearer {access_token}` where `{access_token}` is the token obtained from the `/api/token` endpoint. - **Content-Type** (string) - Required - Set to `application/json`. ### Request Example ```ps1 curl --location --request GET "https://sandbox.payfabric.com/receivables/sync/api/nodus/api/currencies/USD" \ --header "Content-Type: application/json" \ --header "Authorization: Bearer d6cVt15i-O7uG1EO5lXqO1MHmgpE7dL791caYVAuPWioSlLj4Jct5u6oFteRl7rkqVt8ZBsQSyMITyNqQFKQs9YB0aokEUn2F5wqyCtxyVwcyCxbW9PxJVKSMzo1T2CVjYbVqQAU_ws3BcIEdCxCmolufKU0Gm9KLCHWQMAhP5Yv9ns0LlJLNyD1dDSpYVQ3A7zOwQNq05HNR3UesQKK5fNb3aek8qe6Qdm61_jLsIdtxp35do5txe82sKhtlx6KUQubuw_a1dUm_Ncvk0IeHzGq8st" ``` ### Response (Note: Specific response fields for this endpoint are not detailed in the provided text, but a successful response would typically contain currency details.) #### Success Response (200) - **(Fields not specified in source text)** #### Response Example (Response example not provided in source text.) ``` -------------------------------- ### Retrieve Invoice Request Example Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/APIs/Sync/Invoices.md Use a GET request to retrieve an invoice by its identity. ```http GET /invoices?identity=STDINV999999 HTTP/1.1 ``` -------------------------------- ### GET /applications/detail Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/APIs/API/Payments.md Retrieves payment information for a given application GUID from the PayFabric Receivables website. ```APIDOC ## GET /applications/detail ### Description Retrieves the payment information on the PayFabric Receivables website based on the provided application GUID. ### Method GET ### Endpoint /applications/detail?applicationGuid={applicationGuid} ### Parameters #### Query Parameters - **applicationGuid** (string) - Required - The unique identifier for the application. ### Request Example ```http GET /applications/detail?applicationGuid=1620fcac-35e8-e811-87df-534e57000000 HTTP/1.1 ``` ### Response #### Success Response (200) - **CreditAmount** (number) - The total credit amount. - **AdditionalFee** (number) - Any additional fees applied. - **PrepaymentAmount** (number) - The amount of prepayment. - **Currency** (object) - Details about the currency used. - **PaymentStatus** (string) - The current status of the payment. - **Company** (object) - Information about the company. - **Customer** (object) - Details about the customer. - **Transaction** (object or null) - Transaction details, if any. - **WalletEntryGuid** (string) - The GUID of the wallet entry. - **Notes** (string) - Any notes associated with the payment. - **Reference** (string) - A reference number for the payment. - **CreditDistributions** (array) - A list of credit distributions. - **Surcharges** (object or null) - Surcharge information, if any. - **PaymentGuid** (string) - The GUID of the payment. - **PaymentApplies** (array) - A list of payment applications. - **BatchNumber** (string) - The batch number. - **PaymentMethod** (string) - The method used for payment. - **CCNumber** (string) - The credit card number (masked). - **CheckNumber** (string) - The check number. - **CreatedOn** (string) - The date and time the payment was created. - **CustomerId** (string) - The customer ID. - **Identity** (string) - The identity of the payment record. - **PaymentId** (string) - The ID of the payment. - **Amount** (number) - The total amount of the payment. - **BalanceAmount** (number) - The remaining balance amount. - **PaymentType** (string) - The type of payment. - **User** (string) - The user who processed the payment. #### Response Example ```json { "CreditAmount": 0, "AdditionalFee": 0, "PrepaymentAmount": 0, "Currency": { "CurrencyGuid": "1620fcac-35e8-e811-87df-534e57000000", "CCSetupId": "PayFlowProCredit", "ECSetupId": "PaymentechECheck", "IsUsingECheck": true, "IsUsingCreditCard": true, "IsValid": true, "Name": "USD", "CurrencyCode": "Z-US$", "Symbol": "$", "LongName": "US Dollars", "IsFuncCurrency": true }, "PaymentStatus": "Processed", "Company": { "Name": "Nodus Tech", "LogoLarge": "", "Logo": "data:image/gif;base64,...", "Country": "Nodus Tech", "Address": "West First Street", "Address2": "-", "City": "Claremont", "State": "CA", "Zip": "Claremont, CA 91711", "Phone": "909 248 6547", "PortalName": "nodus", "PortalUrl": "https://sandbox.payfabric.com/receivables/nodus", "IntegrationKey": null, "IntegrationPassword": null }, "Customer": { "Status": "Active", "BillingAddress": { "Address1": "98765 Crossway Park Dr", "Address2": "", "Address3": "", "City": "Bloomington", "Country": "USA", "Email": "", "Fax": "", "Name": "Dennis Swenson", "Phone": "", "State": "MN", "Zip": "55304-9840" }, "PrimaryAddress": { "Address1": "98765 Crossway Park Dr", "Address2": "", "Address3": "", "City": "Bloomington", "Country": "USA", "Email": "", "Fax": "", "Name": "Dennis Swenson", "Phone": "", "State": "MN", "Zip": "55304-9840" }, "ShippingAddress": { "Address1": "98765 Crossway Park Dr", "Address2": "", "Address3": "", "City": "Bloomington", "Country": "USA", "Email": "", "Fax": "", "Name": "Dennis Swenson", "Phone": "", "State": "MN", "Zip": "55304-9840" }, "CreditBalance": 0, "InvoiceBalance": 0, "PastDueBalance": 0, "Class": "USA-ILMO-T1", "CustomerId": "Nodus0001", "CopyEmail": null, "Email": "nodus0001@nodus.com", "ExtensionData": "", "Name": "Nodus Technologies", "PaymentTerms": "2% 10/Net 30", "StatementName": "Nodus Technologies", "Currency": "USD", "ShippingMethod": "" }, "Transaction": null, "WalletEntryGuid": "12345678-0000-0000-0000-000000000000", "Notes": "", "Reference": "", "CreditDistributions": [], "Surcharges": null, "PaymentGuid": "12345678-0000-0000-0000-000000000000", "PaymentApplies": [ { "AppliedToInvoice": true, "InvoiceId": "ORDST1026", "Identity": null, "PayAmount": 187.44, "DocumentType": 1, "RowVersion": "AAAAAAAAB/k=" } ], "BatchNumber": "1234", "PaymentMethod": "Cash", "CCNumber": "", "CheckNumber": "", "CreatedOn": "2019-05-21T00:00:00", "CustomerId": "Nodus0001", "Identity": "PYMNT00000000001", "PaymentId": "PYMNT00000000001", "Amount": 200, "BalanceAmount": 12.56, "PaymentType": "Payment", "User": "Nodus0001" } ``` ``` -------------------------------- ### Retrieve All Wallet Links with OData Filter Example Source: https://github.com/payfabric/apis/blob/master/PayLink/Sections/WalletLinks.md This example demonstrates how to filter Wallet Links using OData query parameters. It shows filtering by CustomerNumber, Device, Status, NotificationEmail, NotificationPhone, and CreatedOn date, with results ordered by CompletedOn in descending order. ```odata https://sandbox.payfabric.com/paylink/api/wallet?$filter=CustomerNumber eq 'test' and Device eq GUID'a284c1d0-a6fc-4938-98b4-0000b8cf4210' and Status eq '0' and NotificationEmail eq 'test@nodus.com' and NotificationPhone eq '1234567890' and CreatedOn gt datetime'2018-06-16' & $orderby CompletedOn desc ``` -------------------------------- ### Retrieve Customers Report Request Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/APIs/Sync/Customers.md An example HTTP GET request for retrieving customer data with pagination and filtering parameters. ```http GET /reports/customers?filter.pageSize=10&filter.pageIndex=0&filter.criteria.CustomerId.EqualsTo=Nodus0002 HTTP/1.1 ``` -------------------------------- ### Delete Wallets in Bulk Response Example Source: https://github.com/payfabric/apis/blob/master/PayFabric/Sections/Wallets3.1.md This is an example response after initiating a bulk wallet deletion. It confirms the operation's success and provides counts of wallets to be deleted and total wallets. ```JSON { "Result": true, "WalletsToDeleteCount": 5, "TotalWalletCount": 13087, "Message": "Thank you for confirming the deletion. 5 records will be scheduled to be permanently deleted within 24 hours." } ``` -------------------------------- ### Integration Document Response Example Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/APIs/Sync/Integrations.md Example response structure for retrieving integration documents, showing details like IntegrationId, Date, DocumentId, Status, Type, and more. ```json { "Index": 0, "Total": 2, "Result": [ { "IntegrationId": "b3f5d01c-92cc-ec11-a36a-b0c09018d6d4", "Date": "2018-05-29T10:38:34.037", "DocumentId": "WEBPMT0000000020", "Status": "Pending", "Type": "Payment", "ErrorMessage": null, "FailedAttempts": 0, "LastAttempt": "0001-01-01T00:00:00", "CreatedBy": "Nodus0001" }, { "IntegrationId": "baf5d01c-92cc-ec11-a36a-b0c09018d6d4", "Date": "2018-05-29T10:00:42.66", "DocumentId": "WEBPMT0000000019", "Status": "Pending", "Type": "Payment", "ErrorMessage": null, "FailedAttempts": 0, "LastAttempt": "0001-01-01T00:00:00", "CreatedBy": "Nodus0001" } ] } ``` -------------------------------- ### Update Customer Setup Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/APIs/Sync/Settings.md Use this endpoint to update customer setup settings, such as the customer ID prefix. Requires API authentication. ```json { "CustomerIdPrefix": "PFC" } ``` -------------------------------- ### Update Invoice Setup Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/APIs/Sync/Settings.md Use this endpoint to update invoice setup settings, such as the invoice ID prefix. Requires API authentication. ```json { "InvoiceIdPrefix": "PFI" } ``` -------------------------------- ### Retrieve Payment Methods Paging Request Example Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/APIs/API/PaymentMethods.md This HTTP GET request retrieves payment methods with paging. It accepts `filter.pageSize` and `filter.pageIndex` as query string parameters. ```http GET /paymentmethods/paging?filter.pageSize=10&filter.pageIndex0 HTTP/1.1 ``` -------------------------------- ### Example JSON Response for Token Generation Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/APIs/API/Token.md This is an example of the JSON response received upon successful security token generation. It includes the access token, token type, and expiration time. ```json { "access_token": "d6cVt15i-O7uG1EO5lXqO1MHmgpE7dL791caYVAuPWioSlLj4Jct5u6oFteRl7rkqVt8ZBsQSyMITyNqQFKQs9YB0aokEUn2F5wqyCtxyVwcyCxbW9PxJVKSMzo1T2CVjYbVqQAU_ws3BcIEdCxCmolufKU0Gm9KLCHWQMAhP5Yv9ns0LlJLNyD1dDSpYVQ3A7zOwQNq05HNR3UesQKK5fNb3aek8qe6Qdm61_jLsIdtxp35do5txe82sKhtlx6KUQubuw_a1dUm_Ncvk0IeHzGq8st", "token_type": "bearer", "expires_in": 901, "refresh_token": "df011c2b8c174fec98cc32599988f549" } ``` -------------------------------- ### Expired Wallet Response Example Source: https://github.com/payfabric/apis/blob/master/PayFabric/Sections/Wallets.md Example JSON response structure for retrieving expired wallet records. ```JSON { "Paging": { "Current": "1", "Size": "15", "TotalPages": "1", "TotalRecords": "2" }, "Records": [ { "Aba": "", "Account": "XXXXXXXXXXXX1115", "AccountType": "", "Billto": { "City": "Anaheim", "Country": "USA", "Customer": "", "Email": "", "ID": "4ca94c49-9724-492e-b20e-b11d53a8166b", "Line1": "123 PayFabric Way", "Line2": "", "Line3": "", "ModifiedOn": "1/1/0001 12:00:00 AM", "Phone": "(123)456-7890", "State": "CA", "Zip": "92806" }, "CardHolder": { "DriverLicense": "", "FirstName": "John", "LastName": "Doe", "MiddleName": "", "SSN": "" }, "CardName": "Visa", "CheckNumber": null, "Connector": "", "Customer": "JOHNDOE0001", "ExpDate": "1018", "GPAddressCode": "", "GatewayToken": "", "ID": "cbb571ea-e834-41c4-8a20-7d55bb7ae190", "Identifier": "", "IsDefaultCard": false, "IsLocked": false, "IsSaveCard": false, "IssueNumber": "", "ModifiedOn": "10/2/2015 3:40:41 PM", "StartDate": "", "Tender": "CreditCard", "UserDefine1": "", "UserDefine2": "", "UserDefine3": "", "UserDefine4": "" }, { "Aba": "", "Account": "XXXXXXXXXXXX1115", "AccountType": "", "Billto": { "City": "Anaheim", "Country": "USA", "Customer": "", "Email": "", "ID": "4ca94c49-9724-492e-b20e-b11d53a1111b", "Line1": "123 PayFabric Way", "Line2": "", "Line3": "", "ModifiedOn": "1/1/0001 12:00:00 AM", "Phone": "(123)456-7890", "State": "CA", "Zip": "92806" }, "CardHolder": { "DriverLicense": "", "FirstName": "John", "LastName": "Doe", "MiddleName": "", "SSN": "" }, "CardName": "Visa", "CheckNumber": null, "Connector": "", "Customer": "JOHNDOE0001", "ExpDate": "0918", "GPAddressCode": "", "GatewayToken": "", "ID": "cbb571ea-e834-41c4-8a20-7d55bb711111", "Identifier": "", "IsDefaultCard": false, "IsLocked": false, "IsSaveCard": false, "IssueNumber": "", "ModifiedOn": "10/2/2015 3:40:41 PM", "StartDate": "", "Tender": "CreditCard", "UserDefine1": "", "UserDefine2": "", "UserDefine3": "", "UserDefine4": "" } ] } ``` -------------------------------- ### Retrieve Hosted Payment URL Response Example Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/APIs/API/PaymentMethods.md This is an example of the URL returned when requesting a hosted payment page. It contains various parameters for transaction processing and redirection. ```text "https://sandbox.payfabric.com//payment/web/transaction/process?Token=2%3a4u79jfzl6aqx&Key=19041500243061&ReturnUri=https%3a%2f%2fsandbox%2Epayfabric%2ecom%2fcustomerportal%2fNodusMD%2fWallet%2fPayfabricWalletReturn&Symbol=%24&newWallet=True&Country=USA&Street1=One+Microsoft+Way&City=Redmond&State=WA&Zip=98052%2D6399&Email=Nodus0001%40nodus%2Ecom" ``` -------------------------------- ### GET /Customer Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/Objects/Customer.md Retrieves a list of customers with paging support. ```APIDOC ## GET /Customer ### Description This endpoint retrieves a list of customers with paging support. ### Method GET ### Endpoint /Customer ### Parameters #### Query Parameters - **page** (Int) - Optional - The page number of results to retrieve. - **pageSize** (Int) - Optional - The number of results per page. ### Response #### Success Response (200) - **Index** (Int) - Page number of results - **Total** (Int) - Total number of results - **Result** (Array of Objects) - Customer response details #### Response Example ```json { "Index": 1, "Total": 100, "Result": [ { "CustomerId": "CUST123", "CustomerGuid": "a1b2c3d4-e5f6-7890-1234-567890abcdef", "Name": "John Doe", "Email": "john.doe@example.com", "Status": "Active", "CreditBalance": 1000.50, "InvoiceBalance": 500.00, "PastDueBalance": 50.25 }, { "CustomerId": "CUST456", "CustomerGuid": "b2c3d4e5-f6a7-8901-2345-67890abcdef1", "Name": "Jane Smith", "Email": "jane.smith@example.com", "Status": "Active", "CreditBalance": 750.00, "InvoiceBalance": 200.75, "PastDueBalance": 0.00 } ] } ``` ``` -------------------------------- ### Create Product Source: https://github.com/payfabric/apis/blob/master/PayFabric/Sections/Product.md Sends a POST request to create a new product record. ```json { "ItemNumber": "B4", "Description": "B1", "UOM": "1", "Cost": "2", "CommodityCode": "B1" } ``` ```json { "ID": 25350, "ItemNumber": "B4", "Description": "B1", "UOM": "1", "Cost": "2", "CommodityCode": "B1" } ``` -------------------------------- ### Retrieve Invoice Attachment ID by GUID Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/APIs/API/Invoices.md Use this endpoint to get the attachment ID for an invoice using its unique GUID. The GUID must be in the standard UUID format. ```http GET /invoices/attachmentId/12345678-0000-0000-0000-000000000000 HTTP/1.1 ``` -------------------------------- ### Retrieve Product List Source: https://github.com/payfabric/apis/blob/master/PayFabric/Sections/Product.md Fetches the first 50 products by default using a GET request. ```json { "Page": "1", "TotalRecords": "1", "TotalPages": "1", "Records": [ { "ID": 25349, "ItemNumber": "A100", "Description": "TEST123", "UOM": "EACH", "Cost": "1.98", "CommodityCode": "ADSFASDF" } ] } ``` -------------------------------- ### GET /invoices/attachmentId by InvoiceGuid Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/APIs/API/Invoices.md Retrieves the attachment ID for a given invoice GUID. ```APIDOC ## GET /invoices/attachmentId/{invoiceGuid} ### Description Retrieves the invoice attachment ID associated with the provided InvoiceGuid. ### Method GET ### Endpoint /invoices/attachmentId/{invoiceGuid} #### Path Parameters - **invoiceGuid** (string) - Required - The GUID of the invoice. ### Request Example ```http GET /invoices/attachmentId/12345678-0000-0000-0000-000000000000 HTTP/1.1 ``` ### Response #### Success Response (200) - **attachmentId** (string) - The attachment ID of the invoice. #### Response Example ```text 4045734381292355584 ``` ``` -------------------------------- ### GET /invoices/{invoiceGuid}/file/download Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/APIs/API/Invoices.md Downloads the invoice attachment for a given invoice GUID. ```APIDOC ## GET /invoices/{invoiceGuid}/file/download ### Description Downloads the invoice attachment associated with the provided InvoiceGuid. ### Method GET ### Endpoint /invoices/{invoiceGuid}/file/download #### Path Parameters - **invoiceGuid** (string) - Required - The GUID of the invoice. #### Query Parameters - **IsIframe** (boolean) - Optional - Indicates if this request is embedded in an iFrame. ### Request Example ```http GET /invoices/12345678-0000-0000-0000-000000000000/file/download HTTP/1.1 ``` ### Response #### Success Response (200) - **file** (binary) - The PDF attachment of the invoice. #### Response Example This will return the related PDF attachment ``` -------------------------------- ### Payment Gateway Configuration Response Example Source: https://github.com/payfabric/apis/wiki/API-Reference This JSON shows a sample response for a payment gateway configuration, including its ID, name, processor, and specific fields required for connection. ```json [{"CardClass": "ECheck", "CardClassID": "7", "Connector": "PayflowPro", "Fields": [{"Key": "Server.Address", "Value": "https:\/\/api.sandbox.paypal.com"}, {"Key": "Server.Port", "Value": "443"}, {"Key": "Server.ProxyAddress", "Value": ""}, {"Key": "Server.ProxyPort", "Value": ""}, {"Key": "Server.ProxyUserID", "Value": ""}, {"Key": "Server.ProxyPassword", "Value": ""}, {"Key": "Server.TimeOut", "Value": ""}, {"Key": "Partner", "Value": ""}, {"Key": "Vendor", "Value": ""}, {"Key": "UserID", "Value": "payments@samsonite.com"}, {"Key": "Password", "Value": "Samsonite"}, {"Key": "MerchantDescriptor", "Value": ""}, {"Key": "MerchantServiceNumber", "Value": ""}, {"Key": "CommodityCode", "Value": ""}, {"Key": "VATNumber", "Value": ""}], "ID": "d468606d-7323-4c9c-9612-7ffb114315f1", "Name": "Samsonite", "Processor": "PayPal", "ProcessorID": "22"}] ``` -------------------------------- ### GET /api/setupid/{id} Source: https://github.com/payfabric/apis/wiki/API-Reference Retrieves account information for a single Payment Gateway using its unique identifier. ```APIDOC ## GET /api/setupid/{id} ### Description Retrieves account information for a single Payment Gateway. Only the fields that uniquely identify a single Payment Gateway account will be returned. ### Method GET ### Endpoint https://sandbox.payfabric.com/rest/v1/api/setupid/{id} ### Parameters #### Path Parameters - **id** (string) - Required - The unique identifier for the Payment Gateway. ### Response #### Success Response (200) - **GatewayAccount** (object) - Returns the GatewayAccount object containing details like CardClass, Connector, and Fields. #### Response Example { "CardClass": "ECheck", "CardClassID": "7", "Connector": "PayflowPro", "Fields": [ { "Key": "Server.Address", "Value": "https://api.sandbox.paypal.com" } ], "ID": "d468606d-7323-4c9c-9612-7ffb114315f1", "Name": "Samsonite", "Processor": "PayPal", "ProcessorID": "22" } ``` -------------------------------- ### GET /rest/v1/api/setupid Source: https://github.com/payfabric/apis/wiki/API-Reference Retrieves information for every Payment Gateway currently on record in the PayFabric server. ```APIDOC ## GET /rest/v1/api/setupid ### Description This resource returns information for every Payment Gateway currently on record in the PayFabric server. ### Method GET ### Endpoint https://sandbox.payfabric.com/rest/v1/api/setupid ### Response #### Success Response (200) - **Array** (GatewayAccount) - An array of GatewayAccount objects. #### Response Example [ { "CardClass": "ECheck", "CardClassID": "7", "Connector": "PayflowPro", "Fields": [ { "Key": "Server.Address", "Value": "https://api.sandbox.paypal.com" } ], "ID": "d468606d-7323-4c9c-9612-7ffb114315f1", "Name": "Samsonite", "Processor": "PayPal", "ProcessorID": "22" } ] ``` -------------------------------- ### GET /payments/detail Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/APIs/API/Payments.md Retrieves detailed payment information from the PayFabric Receivables website based on the provided payment GUID. ```APIDOC ## GET /payments/detail ### Description Retrieves the payment information on the PayFabric Receivables website based on the URL parameters. ### Method GET ### Endpoint /payments/detail ### Parameters #### Query Parameters - **paymentGuid** (string) - Required - The unique identifier for the payment. ### Request Example GET /payments/detail?paymentGuid=1620fcac-35e8-e811-87df-534e57000000 HTTP/1.1 ### Response #### Success Response (200) - **CreditAmount** (number) - Credit amount applied. - **AdditionalFee** (number) - Additional fees charged. - **PrepaymentAmount** (number) - Amount prepaid. - **Currency** (object) - Currency details. - **PaymentStatus** (string) - Current status of the payment. - **Company** (object) - Company information. - **Customer** (object) - Customer details. - **PaymentGuid** (string) - Unique identifier for the payment. - **PaymentApplies** (array) - List of invoices the payment is applied to. - **Amount** (number) - Total payment amount. - **BalanceAmount** (number) - Remaining balance. #### Response Example { "CreditAmount": 0, "AdditionalFee": 0, "PrepaymentAmount": 0, "Currency": { "CurrencyGuid": "1620fcac-35e8-e811-87df-534e57000000", "Name": "USD" }, "PaymentStatus": "Processed", "PaymentGuid": "12345678-0000-0000-0000-000000000000", "Amount": 200, "BalanceAmount": 12.56 } ``` -------------------------------- ### Create Wallet Link Response Source: https://github.com/payfabric/apis/blob/master/PayLink/Sections/WalletLinks.md This is an example response after successfully creating a Wallet Link. It includes the unique Id, status, and the generated Wallet Link URL. ```json { "Id": "x__BqrJ0xU2nEK_aOO7ozDE", "InstID": "11a2c6f2-33f6-48b3-a5ab-697db2519ec7", "Device": "23c6b04e-cd06-4185-801a-8614508f065f", "TenderType": 0, "CustomerNumber": "CUST0001", "CustomerName": "JOHNDOE0001", "NotificationEmail": "sample@email.com", "NotificationEmailDisplay": "sample@email.com", "NotificationPhone": "123456789", "NotificationPhoneDisplay": "123456789", "CustomeMessage": "", "Status": 0, "Notification": { "Type": "All", "SMSTemplate": null, "EmailTemplate": null, "ResponseStatus": "1", "ResponseMessage": "Invalid SMS template.\r\n" }, "WalletID": "00000000-0000-0000-0000-000000000000", "ReturnUrl": "", "CompletedOn": null, "CreatedOn": "2022-05-26T05:37:37.63", "ModifiedOn": "2022-05-26T05:37:37.63", "Link": "https://sandbox.payfabric.com/PayLink/Web/walletlink/x__BqrJ0xU2nEK_aOO7ozDE", "AcceptType": "0", "CompleteOnUTC": null, "CreatedOnUTC": "2022-05-26T12:37:37.63Z", "ModifiedOnUTC": "2022-05-26T12:37:37.63Z" } ``` -------------------------------- ### Process an eCheck Transaction Endpoint Source: https://github.com/payfabric/apis/blob/master/PayFabric/Sections/Process eCheck Transaction.md Example of the GET request used to process a transaction via the payment gateway. ```http GET /transaction/process/18103000208029 ``` -------------------------------- ### Retrieve Invoice HTML via GET Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/APIs/API/Invoices.md Use this request to fetch the HTML content associated with a specific invoice GUID. ```http GET /invoices/display/12345678-0000-0000-0000-000000000000 HTTP/1.1 ``` -------------------------------- ### GET /payment/api/setupid Source: https://github.com/payfabric/apis/blob/master/PayFabric/Sections/Payment Gateway Profiles.md Retrieve all payment gateway profiles configured for the user. ```APIDOC ## GET /payment/api/setupid ### Description Returns all payment gateway profiles configured for the PayFabric user. ### Method GET ### Endpoint /payment/api/setupid ### Response #### Success Response (200) - **Array** (object) - A list of gateway profile objects. #### Response Example [ { "CardClass": "ECheck", "CardClassID": "3", "Connector": "EvoACH", "DailyBatchCloseTime": "20:00", "ID": "d91e5b3a-b10f-4f02-b3b9-32bfbdc1834e", "Name": "EVO US_ACH", "Processor": "Evo ACH", "ProcessorID": "1", "SettledTime": "5/31/2022 8:00:00 PM", "SettledTimeUTC": "2022-06-01T03:00:00.000Z", "SurchargeRate": "0" } ] ``` -------------------------------- ### Currency Response Object Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/APIs/API/DocumentHistory.md Example of a JSON response containing currency configuration details. ```json [ { "CCSetupId": "PFP", "ECSetupId": "PFP_ECheck", "IsUsingECheck": true, "IsUsingCreditCard": true, "IsValid": true, "SurchargePercentage": null, "CurrencyGuid": "8f2f9b0e-92cc-ec11-a36a-b0c09018d6d4", "Name": "USD", "CurrencyCode": "USD", "Symbol": "$", "LongName": "US Dollars", "IsFuncCurrency": true } ] ``` -------------------------------- ### Retrieve Document History Request Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/APIs/API/DocumentHistory.md Example HTTP GET request for document history with pagination and date filtering parameters. ```http GET /document/history?filter.pageSize=10&filter.pageIndex=0&filter.criteria.DocumentDate.Min=2010-01-01 HTTP/1.1 ``` -------------------------------- ### Create and Submit Transaction C# Sample Source: https://github.com/payfabric/apis/wiki/API-Reference---V2 Sample C# code for creating and submitting a transaction to the payment gateway in a single request. This is an alternative to performing these actions separately. ```csharp // Sample code for Create and Submit Transaction by Transaction Object // See https://github.com/PayFabric/APIs/blob/v2/net40/Transaction/Process.cs ``` -------------------------------- ### Retrieve Past Due Invoices Request Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/APIs/API/Invoices.md Example HTTP GET request for retrieving past due invoices with pagination and filtering parameters. ```http GET /invoices/pastdue?filter.pageSize=10&filter.pageIndex=0&filter.criteria.invoiceId.contains=STDINV HTTP/1.1 ``` -------------------------------- ### Download Application Record Details Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/APIs/API/Payments.md Use this GET endpoint to retrieve payment information from the PayFabric Receivables website. Requires an application GUID as a parameter. ```http GET /applications/detail/download?applicationGuid=12345678-0000-0000-0000-000000000000 HTTP/1.1 ``` -------------------------------- ### Create Theme Source: https://github.com/payfabric/apis/blob/master/PayFabric/Sections/Theme.md Creates a new theme. Requires API authentication. ```APIDOC ## POST /payment/3.1/api/Theme ### Description Creates a new theme with the provided details. ### Method POST ### Endpoint /payment/3.1/api/Theme ### Parameters None ### Request Body - **Name** (string) - Required - The name of the theme. - **CSS** (string) - Optional - Custom CSS styles for the theme. - **JS** (string) - Optional - Custom JavaScript for the theme. - **Parameters** (array) - Optional - An array of parameters associated with the theme. ### Request Example ```json { "Name": "abc", "CSS": "body{background-color:pink;}", "JS": "alert(123)", "Parameters": [ "NOBATCH", "NOSETUPID", "NOBILLTO", "NOSHIPTO", "NOHISTORYCARD", "NOPAYLATER" ] } ``` ### Response #### Success Response (200 or 201) - **ThemeId** (string) - The unique identifier for the newly created theme. - **Name** (string) - The name of the theme. - **CSS** (string) - Custom CSS styles for the theme. - **JS** (string) - Custom JavaScript for the theme. - **Parameters** (array) - An array of parameters associated with the theme. #### Response Example ```json { "ThemeId": "573028d6-d5a3-4318-beaa-a7df223ef08f", "Name": "abc", "CSS": "body{background-color:pink;}", "JS": "alert(123)", "Parameters": [ "NOBATCH", "NOSETUPID", "NOBILLTO", "NOSHIPTO", "NOHISTORYCARD", "NOPAYLATER" ] } ``` ``` -------------------------------- ### Retrieve Payments Report Request Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/APIs/Sync/Payments.md HTTP GET request example for retrieving payments report with query parameters for pagination and customer ID filtering. ```http GET /reports/payments?filter.pageSize=10&filter.pageIndex=0&filter.criteria.CustomerId.EqualsTo=Nodus0001 HTTP/1.1 ``` -------------------------------- ### Using the Security Token Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/APIs/API/TokenImpersonate.md Demonstrates how to use the obtained security token to authenticate subsequent API calls. ```APIDOC ## GET /customerportal/api/{PortalName}/api/customers ### Description An example of an API call using the security token obtained from the token generation endpoint. ### Method GET ### Endpoint `https://{PayFabric URL}/customerportal/api/{PortalName}/api/customers` ### Parameters #### Path Parameters - **{PayFabric URL}** (string) - Required - The PayFabric URL. Use `www.payfabric.com` for production or `sandbox.payfabric.com` for sandbox. - **{PortalName}** (string) - Required - The Portal Name obtained from the PayFabric Receivables Management portal. #### Query Parameters None #### Request Body None ### Request Example ```ps1 curl --location --request GET 'https://sandbox.payfabric.com/customerportal/api/nodus/api/customers' \ --header 'Authorization: Bearer d6cVt15i-O7uG1EO5lXqO1MHmgpE7dL791caYVAuPWioSlLj4Jct5u6oFteRl7rkqVt8ZBsQSyMITyNqQFKQs9YB0aokEUn2F5wqyCtxyVwcyCxbW9PxJVKSMzo1T2CVjYbVqQAU_ws3BcIEdCxCmolufKU0Gm9KLCHWQMAhP5Yv9ns0LlJLNyD1dDSpYVQ3A7zOwQNq05HNR3UesQKK5fNb3aek8qe6Qdm61_jLsIdtxp35do5txe82sKhtlx6KUQubuw_a1dUm_Ncvk0IeHzGq8st' ``` ### Response #### Success Response (200) (Response structure depends on the specific endpoint being called, e.g., `/api/customers`) #### Response Example (Example response for `/api/customers` would be provided here if available in source text) ``` -------------------------------- ### Retrieve Subscription Report Request Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/APIs/Sync/Subscriptions.md Example HTTP GET request to retrieve a subscription report with specified page size, index, and customer ID filter. ```http GET /reports/subscriptions?filter.pageSize=10&filter.pageIndex=0&filter.criteria.CustomerId.EqualsTo=Nodus0001 HTTP/1.1 ``` -------------------------------- ### CustomerSetupRequest Object Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/Objects/Setting.md This object is used when updating the customer setup settings in the PayFabric Receivables website. ```APIDOC ## CustomerSetupRequest Object ### Description This object is used when updating the customer setup settings in the PayFabric Receivables website. ### Attributes #### Path Parameters None #### Query Parameters None #### Request Body - **AllowCreate** (Boolean) - Optional - Allow customers to be created on the PayFabric Receivables website. - **AllowCustomerIdEntry** (Boolean) - Optional - Allow customerId to be edited for Receivables created customers. - **AllowEdit** (Boolean) - Optional - Allow customers to be edited on the PayFabric Receivables website. - **CustomerIdPrefix** (String) - Optional - CustomerId prefix for Receivables created customers. Max Length: 10 - **CustomerIdNumberLength** (Int) - Optional - CustomerId number length for Receivables created customers. ### Request Example ```json { "AllowCreate": true, "AllowCustomerIdEntry": false, "AllowEdit": true, "CustomerIdPrefix": "CUST-", "CustomerIdNumberLength": 8 } ``` ### Response #### Success Response (200) This object typically returns a success message or confirmation upon successful update. #### Response Example ```json { "message": "Customer setup updated successfully." } ``` ``` -------------------------------- ### Subscription Response Example Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/APIs/Sync/Subscriptions.md This JSON structure represents a typical response when retrieving subscription details. It includes information about the customer, billing, and subscription items. ```json [ { "ID": "SUBSCRIPTION0001", "CustomerID": "Nodus0001", "Currency": "USD", "InvoiceType": "Default", "PONumber": "", "Email": "Nodus0001@nodus.com", "CopyEmail": [ "Nodus0002@nodus.com" ], "PaymentTerms": "Net 30", "TaxGroup": "Default", "Comments": "", "PaymentMethod": null, "CreatedOn": "2022-05-05T16:41:11.5417473Z", "LastBillDate": null, "NextBillDate": "1/1/2050 12:00:00 AM", "Status": "Open", "BillingAddress": { "Address1": "1234 Street", "Address2": "", "Address3": "", "AddressId": "PRIMARY", "City": "Los Angeles", "Country": "USA", "Name": "Nodus Technologies", "State": "CA", "Zip": "12345" }, "ShippingAddress": { "Address1": "1234 Street", "Address2": "", "Address3": "", "AddressId": "PRIMARY", "City": "Los Angeles", "Country": "USA", "Name": "Nodus Technologies", "State": "CA", "Zip": "12345" }, "SubscriptionItems": [ { "ID": "TestItem01", "ItemCode": "TestItem01", "UnitOfMeasure": "", "UnitPrice": 5.0, "Quantity": 3.0, "Markdown": 0.5, "CommodityCode": "", "Description": "Pen", "Comment": "", "Frequency": "Monthly", "FrequencyInterval": 1, "Occurrences": "5", "Sequence": 1, "Taxable": true, "StartDate": "2050-01-01T00:00:00.0000000Z", "NextBillDate": "2050-01-01T00:00:00.0000000Z", "NextBillDay": 1, "Taxes": [ { "Name": "SalesTax", "Rate": 0.08 } ] } ] } ] ``` -------------------------------- ### Retrieve Hosted Payment URL Request Example Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/APIs/API/PaymentMethods.md This HTTP GET request retrieves a URL for creating a payment method on the PayFabric Receivables website. The `paymentIdentity` parameter is required. ```http GET /paymentmethods/hostedpayment/url?paymentIdentity=WEBPMT000000020 HTTP/1.1 ``` -------------------------------- ### Retrieve TenderType Enabling Request Example Source: https://github.com/payfabric/apis/blob/master/Receivables/Sections/APIs/API/PaymentMethods.md This HTTP GET request retrieves information about which tender types are enabled on the PayFabric Receivables website. No specific parameters are required for this basic request. ```http GET /paymentmethods/tendertypeenabling HTTP/1.1 ``` -------------------------------- ### Submit Transaction by Key C# Sample Source: https://github.com/payfabric/apis/wiki/API-Reference---V2 Sample C# code for submitting a previously created transaction to a payment gateway using its transaction key. ```csharp // Sample code for Submit Transaction to Payment Gateway by Transaction Key // See https://github.com/PayFabric/APIs/blob/v2/net40/Transaction/Process.cs ```