...
Note |
---|
IMPORTANTE: El servicio de Aggregation es el que se usarán para las pruebas correspondientes en ambientes de QA y ST: Account + Customer en Genesys Card en Spin |
Detalle de endpoints
Table of Contents |
---|
minLevel | 1 |
---|
maxLevel | 6 |
---|
outline | false |
---|
type | list |
---|
printable | false |
---|
|
Ejemplo body:
El detalle que se muestra es el camino deseado (happy path) de los endpoints desarrollados.
El código esperado es un 200 + un body, en estos casos
Ejemplo de body - EnableToken (POST /tokens/key):
Body - Request
{
"deviceId": "15703c1c-352a-11ee-be56-0242ac120002",
"keyId": "05616256-352a-11ee-be56-0242ac120002",
"publicKey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCR9+qdg/HrRLzgkbphCnQpN+NscOEY8vQO/M+/U4erX3ZK9IcV9MulLyY4faIBV2LeJpeUDzemFygjz/e+as6gKjbrJ7jHldl0stpfyUv6Se5iwC2wunevURLjnyk31Af9QtJr5KGsNrtyVzNYis92LGUY64tHEVNoL6DmrD/JJwIDAQAB",
"publicKeyAlgorithm": "RSA"
}
Panel |
---|
panelIconId | atlassian-note |
---|
panelIcon | :note: |
---|
bgColor | #FFBDAD |
---|
|
Body - Response { "seed": "PGh9l4M6kfEWQPSAlB2ELD9p1GTMZ/lQSzkBg2n/lhTOsZtNh2lvhoRkCCBnsGuZgjBGPIfHFye3yi/b5YUKl+2CA673Fg66WruKTU58ywk/rZYUKXOku2NI8PliZG9P9/nrgrZ75D5SxsuUv0DIj8A0WfdYu16PLFnH4MGhD6A=" } |
Mirror
Account
Info |
---|
Consulta de bloqueos Repositorio sincronizado con Fiserv Disminuye peticiones al Proveedor |
GetAccountDetails
...
Descripción
...
Request
...
Response
...
HTTP Codes
Aggregation
Estos son los componentes que se estarán usando para la ejecución de pruebas en el proyecto:
Account Aggregation Service
Info |
---|
Incorpora los servicios de Account Mirror y Balance Mirror Validación de campos mandatorios antes del envío a Fiserv Expone endpoints a través de un API REST y gRPC |
POST → /v1/accounts/details
Descripción | Request | Response | HTTP Codes | GRPC Codes |
---|
Realiza la consulta de bloqueos de cuenta Activa | Code Block |
---|
{
"accountNumber": "9500507060523627372"
} |
| Code Block |
---|
{
"accountData": {
"accountNumber": "9500507060523627372",
"customerNumber": "0995000000000078206"
}
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
Realiza la consulta de bloqueos de cuenta |
.Inactiva | Code Block |
---|
{
"accountNumber": " |
|
9500501520328494829 | Code Block |
---|
{
"accountData": {
"accountNumber": " |
|
95005015203284948299500501403742215502",
"customerNumber": " |
|
0995000000000035249"blockCode1":"M", blockCode1Date2023-09-07 "blockCode2":"M",blockCode2Date0811"accountMakerDateOfBirth":"", availableCredit0
"userAmounts9":0,userAmounts10 0,
userAmounts7": 02 | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. |
4 3 Bad Request: Request con campos no válidos. |
5 Descripción | Request | Response | HTTP Codes |
Realiza bloqueos/desbloqueo de cuenta.13 Internal Server Error: Servicios no disponibles. |
SetAccountBlock
Realiza la consulta de bloqueos de cuenta Expirada | |
blockCodeaccountNumber": "9500501566817108768" |
|
, "blockCodeIndicator": 1,foreignUse0,"functionCode":"U",9500501520328494829} Code Block |
{"functionCode":"B",accountNumber9500501520328494829,"blockCode1Local":"M",
"localOrganization": 950
}2 OK4 Bad Request400: Request con campos no válidos. 401: Apy Key no válida. |
5 Internal Server ErrorDescripción | Request | Response | HTTP Codes |
Sincroniza el mirror de account con la información de Fiserv.500: Servicios no disponibles. |
SynchronizeMirrorAccount
0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
Realiza la consulta de bloqueos de cuenta Bloqueada | Code Block |
---|
{
"accountNumber": " |
|
9500501520328494829 | Code Block |
---|
{
"accountData": {
"accountNumber": " |
|
95005015203284948299500509377699205330",
"customerNumber": " |
|
0995000000000035249"blockCode1":"M",
blockCode1Date2023-09-07"blockCode2": "M",
blockCode2Date0811,"accountMakerDateOfBirth": "",
"availableCredit": 0,
"userAmounts9": 0,
"userAmounts10": 0,
"userAmounts7": 0
}
}2 | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. |
4 3 Bad Request: Request con campos no válidos. |
5 13 Internal Server Error: Servicios no disponibles. |
Balance
Info |
---|
Consulta de balance Repositorio sincronizado con Fiserv Disminuye peticiones al Proveedor |
GetAccountBalance
POST → /v1/accounts/blocks
Descripción | Request | Response | HTTP Codes |
---|
Realiza la consulta de balance de cuenta.GRPC Codes |
---|
Realiza bloqueos/desbloqueo de cuenta - Bloquear (foreignUse= 0) | |
accountNumber9500501520328494829
} Code Block |
{
accountOrCardNumber"9500501520328494829"currentBalance998176210159availableCreditLimit32237425576994724frozenBalance260002 OK: Solicitud exitosa.Descripción | Request | Response | HTTP Codes |
---|
Sincroniza el mirror de balance con la información de Fiserv. | 4 Bad Request: Request con campos no válidos.
5 Internal Server Error: Servicios no disponibles.
SynchronizeMirrorBalance
accountNumber9500501520328494829} Code Block |
{accountOrCardNumberaccountNumber": "9500501520328494829",
" |
|
currentBalance998176210159
"availableCreditLimit":32237425576994724,frozenBalance260002 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. |
4 3 Bad Request: Request con campos no válidos. |
5 13 Internal Server Error: Servicios no disponibles. |
...
Descripción | Request | Response | HTTP Codes |
Realiza una transferencia .Realiza bloqueos/desbloqueo de cuenta - Bloquear (foreignUse= 1) | |
transactionData{
transactionAmount1
actionCode"8012"
authorizationCode311S3q
effectiveDate2023-06-21",descriptionP2PpaidConcepttestmemoPostedIndicator"qqq",
"suppressMonetaryTransaction | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
Realiza bloqueos/desbloqueo de cuenta - Desbloquear | Code Block |
---|
{
"blockCode": " |
|
qqq
n1n2ByPass"qqq"
identifier"S_IN",
box3 crPlaza10MON, "crStore":"50WHN", keyTrackingKEYTRACKING0123456789senderAccountsenderAccount012345beneficiaryAccountbeneficiaryAccount1counterpartInstitution"aaaaa",
"operatingInstitution": "bbbbb",
"frcUprkBeneficiary": "frcUprkBenefi",
"orderingFrcUprk": "orderingFrcUp",
"device": "123456789-123456789-123456789-12",
"ip": "198.162.200.200",
"latitude": -109.699,
"longitude": 23.062,
"recipientName": "recipientName01234567890123456",
"orderingName": "orderingName012345678901234567",
"paymentSourceId": "paymentSourceId012345"
},
"xTransactionId": "123",
"accountNumber": "9500501545918394337"
} Code Block |
---|
{
"historyDate": "2023-09-12",
"historyTime": "111208",
"transactionData": {
"transactionCode": "8012",
"transactionDescription": "P2P RECIEVER",
"currentBalance": "-2122495",
"openToBuy": "2122548"
}
} |
| 2 OK: Solicitud exitosa. 4 Bad Request: Request con campos no válidos. 5 Internal Server Error: Servicios no disponibles. | TransferPeerToPeer
Descripción | Request | Response | HTTP Codes |
Realiza una transferencia P2P. | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
Para éste endpoint se requieren los siguientes valores:
blockCode: Código de bloqueo proporcionado por Spin.
blockCodeIndicator: Indica el código de bloqueo a usar: 0-1 primer código de bloqueo, 2 segundo código de bloqueo.
foreignUse: 0
functionCode: indica si se va bloquear (“B“) o desbloquear (“U“)
accountNumber: código de cuenta.
...
POST → /v1/accounts/syncs
Descripción | Request | Response | HTTP Codes | GRPC Codes |
---|
Sincroniza el mirror de account con la información de Fiserv - Número de cuenta Activa | Code Block |
---|
{
"accountNumber": "9500503048928881284"
} |
| Code Block |
---|
{
"accountData": {
"accountNumber": "9500503048928881284",
"customerNumber": "0995000000000076294",
"accountMakerDateOfBirth": "1994-05-06",
"availableCredit": 10000.0,
"userAmounts9": -50000.0,
"userAmounts10": -40000.0
}
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles.POST → /v1/balances | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
Sincroniza el mirror de account con la información de Fiserv - Número de cuenta Inactiva | |
fromaccountNumber": "9500501403742215502"
} |
| |
accountNumber "9500508496924050930",actionCode8008transactionDescriptionP2P_TRANSFER_SOURCEdescriptionP2P_TRANSFER_SOURCEauthorizationCode1234"
}"to":{accountNumber9500502030236002994actionCode8012"transactionDescription":"P2P_TRANSFER_TARGET", descriptionaccountMakerDateOfBirth": " |
|
P2P_TRANSFER_SOURCE",
"authorizationCode": "1234"
},
"effectiveDate": "2022-01-30","transactionAmount": 100,
"device": "abcfghjfghjklghjkfghjk5678956789",
"ip": "198.162.123.148",
"latitude": 123.56565656, | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles.POST → /v1/balances | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
Sincroniza el mirror de account con la información de Fiserv - Número de cuenta Expirada | Code Block |
---|
{
"accountNumber": "9500508152383529456"
} |
| |
longitude -23.565656,xTransactionId123"
} Code Block |
{effectiveDate2022-01-30"transactionAmount":"100","actionOutputArea": {
actionData": [
{
"authorizationCodeaccountMakerDateOfBirth": " |
|
1234accountNumber"9500508496924050930"transactionDescription"P2P SENDER"feeAmount""transactionCode8008,
"currentBalance": -5988391, "creditLimit": 0,
"openToBuy": 598649100, | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles.POST → /v1/balances | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
Sincroniza el mirror de account con la información de Fiserv - Número de cuenta Bloqueada | Code Block |
---|
{
"accountNumber": "9500508176491773011"
} |
| Code Block |
---|
{
"accountData": {
" |
|
authorizationNumber507925}, "customerNumber": "0995000000000080637",
|
|
{ "authorizationCode1234accountNumber9500502030236002994transactionDescriptionP2P RECIEVERfeeAmountaccountMakerDateOfBirth": " |
|
0, "transactionCode": 8012,
"currentBalance": -169434,
"creditLimit": 0,
"openToBuy": 17133400,
"authorizationNumber": "332272"
}
]
}
}2 OK | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles.POST → /v1/balances | 0 OK: Solicitud exitosa. |
4 3 Bad Request: Request con campos no válidos. |
5 13 Internal Server Error: Servicios no disponibles. |
...
POST → /v1/balances
Descripción | Request | Response | HTTP Codes |
---|
Realiza una transferencia QRGRPC Codes |
---|
Realiza la consulta de balance de cuenta. | |
transactionData {
transactionAmount: 20,
"actionCode | Code Block |
---|
{
"accountOrCardNumber": " |
|
8038 "authorizationCode"Q1er44" "effectiveDate"2022-08-24" "description"QR code test - normal hours",
"paidConcept": "Hello",
"memoPostedIndicator": " ",
"suppressMonetaryTransaction": "Y",
"n1n2ByPass": "N",
"identifier": 0,
"box": "1", | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
POST → /v1/balances/syncs
Descripción | Request | Response | HTTP Codes | GRPC Codes |
---|
Sincroniza el mirror de balance con la información de Fiserv - Número de cuenta Activa | Code Block |
---|
{
"accountNumber": "9500501520328494829"
} |
| |
crPlaza10MONcrStore"50WHN"keyTracking"Hello",
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
Sincroniza el mirror de balance con la información de Fiserv - Número de cuenta Inactiva | |
beneficiaryAccountHello",senderAccountHello,
"counterpartInstitution": "Hello",
"operatingInstitution": "Hello",
"frcUprkBeneficiary": "Hello",
"orderingFrcUprk": "Hello | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
Sincroniza el mirror de balance con la información de Fiserv - Número de cuenta Expirada | Code Block |
---|
{
"accountNumber": "9500508152383529456"
} |
| Code Block |
---|
{
"accountOrCardNumber": "9500508152383529456",
" |
|
device"123456789-123456789-123456789-12"ip"198.162.200.200",
"latitude": -109.699,
"longitude": 23.062, | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
Sincroniza el mirror de balance con la información de Fiserv - Número de cuenta Bloqueada | Code Block |
---|
{
"accountNumber": "9500508176491773011"
} |
| |
recipientNameHello,
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
PUT → /v1/balances/transfers
Descripción | Request | Response | HTTP Codes | GRPC Codes |
---|
Realiza una transferencia - Número de cuenta Activa | |
orderingNameHellotransactionAmount": 1000,
" |
|
paymentSourceIdbf0469d7-b507-44d6-af7d-d4edea6340f1"
},8000",
"authorizationCode": "311S3q",
" |
|
xTransactionId123accountNumber9500508020127353147} Code Block |
{historyDate2023-09-12historyTime111311transactionDatasuppressMonetaryTransaction": |
|
{transactionCode8038transactionDescriptionCASHOUT WITH QR-CODE(FREE BAL)currentBalance-1382946openToBuy1382326}
}2 OK: Solicitud exitosa. 4 Bad Request: Request con campos no válidos. 5 Internal Server Error: Servicios no disponibles. | Card
Info |
---|
Incorpora los endpoints de Card Mirror Sincronización de datos con el Mirror Expone endpoints a través de un API REST |
POST → /v1/cards/embossers/details
Descripción | Request | Response | HTTP Codes |
---|
Obtener cuenta mediante Pantoken | Code Block |
{ "keyTracking": "KEYTRACKING0123456789",
" |
|
panToken0004217470595215803cardSequence2147483647 "foreignUse":0} Code Block |
{ postToAccountcounterpartInstitution": " |
|
9500508261544464147 "blockCode "operatingInstitution": " |
|
Z cardNumber***************0252 currentCardActivationN "dateBlock20230904
}200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | PUT → /v1/cards/embossers/block
Descripción | Request | Response | HTTP Codes |
---|
Bloqueo de tarjetas | Code Block |
---|
{
"blockCode": "Z",
"panToken": "0004217470885923553",
"cardSequence": 1,
"functionCode": "B" //B para bloquear - u Desbloquear
} |
| | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
Gateway
Account Adapter
Info |
---|
Permite tener la comunicación entre Spin y Fiserv para los módulos de account y balance. |
GetAccountDetails
Descripción | Request | Response | HTTP Codes |
---|
Realiza la consulta de bloqueos de cuenta. | Code Block |
---|
{
"accountNumber": "9500501520328494829"
} |
| Code Block |
{
"accountData": {
"accountNumber": "9500501520328494829",
"customerNumber": "0995000000000035249",
"blockCode1": "M",
"blockCode1Date": "2023-09-07",
"blockCode2": "M",
"blockCode2Date": "2023-08-11,
"ip": "198.162.200.200",
"latitude": -109.699,
"longitude": 23.062,
"recipientName": "recipientName01234567890123456",
"orderingName": "orderingName012345678901234567",
"paymentSourceId": "paymentSourceId012345"
},
"xTransactionId": "123",
"accountNumber": "9500503048928881284",
"operationType": "D"
} |
| Code Block |
---|
{
"historyDate": "2023-09-18",
"historyTime": "164440",
"transactionData": {
"transactionCode": "8000",
"currentBalance": "-10000",
"openToBuy": "13000"
}
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
Realiza una transferencia - Número de cuenta Inactiva | Code Block |
---|
{
"transactionData": {
"transactionAmount": 1000,
"actionCode": "8000",
" |
|
accountMakerDateOfBirthauthorizationCode": "311S3q",
" |
|
availableCredit0userAmounts90userAmounts100userAmounts70}}2 OK: Solicitud exitosa. 4 Bad Request: Request con campos no válidos. 5 Internal Server Error: Servicios no disponibles. | SetAccountBlock
Descripción | Request | Response | HTTP Codes |
---|
Realiza bloqueos/desbloqueo de cuenta. | Code Block |
{ blockCodesuppressMonetaryTransaction": "qqq",
" |
|
blockCodeIndicator1foreignUse0,functionCodeUaccountNumber9500501520328494829} Code Block |
{functionCodeBaccountNumber9500501520328494829KEYTRACKING0123456789",
" |
|
blockCode1LocalMlocalOrganizationbeneficiaryAccount": "beneficiaryAccount1",
|
|
950}2 OK: Solicitud exitosa. 4 Bad Request: Request con campos no válidos. 5 Internal Server Error: Servicios no disponibles. | TransferBalance
Descripción | Request | Response | HTTP Codes |
---|
Realiza una transferencia . | Code Block |
{transactionData{transactionAmount1actionCode8012authorizationCode311S3qeffectiveDate20230621descriptionP2PpaidConcept"test"memoPostedIndicator"qqq"suppressMonetaryTransactionqqqrecipientName01234567890123456",
" |
|
n1n2ByPassqqqorderingName012345678901234567",
" |
|
identifierS_IN,box3
crPlaza10MON
crStore50WHN",keyTrackingKEYTRACKING0123456789senderAccountsenderAccount012345beneficiaryAccount"beneficiaryAccount1", "counterpartInstitution":"aaaaa",operatingInstitutionbbbbb "frcUprkBeneficiary":"frcUprkBenefi",orderingFrcUprkorderingFrcUp,"device": "123456789-123456789-123456789-12",
"ip": "198.162.200.200",
"latitude": -109.699, | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
Realiza una transferencia - Número de cuenta Expirada | Code Block |
---|
{
"transactionData": {
" |
|
longitude23.062recipientNamerecipientName01234567890123456orderingNameorderingName012345678901234567paymentSourceIdpaymentSourceId012345}xTransactionId123accountNumber9500501545918394337} Code Block |
{historyDatesuppressMonetaryTransaction": " |
|
2023-09-12historyTime111208transactionData{transactionCode8012transactionDescriptionP2P RECIEVER10MON",
"crStore": "50WHN",
" |
|
currentBalance-2122495KEYTRACKING0123456789",
" |
|
openToBuy2122548}
}2 OK: Solicitud exitosa. 4 Bad Request: Request con campos no válidos. 5 Internal Server Error: Servicios no disponibles. | TransferPeerToPeer
Descripción | Request | Response | HTTP Codes |
---|
Realiza una transferencia P2P. | Code Block |
{ "beneficiaryAccount": "beneficiaryAccount1",
" |
|
from{accountNumber9500508496924050930actionCode8008transactionDescriptionP2P_TRANSFER_SOURCEdescriptionP2P_TRANSFER_SOURCE123456789-123456789-123456789-12",
" |
|
authorizationCode1234"}, to{accountNumber"9500502030236002994"actionCode8012recipientName01234567890123456",
" |
|
transactionDescriptionP2P_TRANSFER_TARGETorderingName012345678901234567",
" |
|
descriptionP2P_TRANSFER_SOURCE,authorizationCode1234
} effectiveDate2022-01-309500508152383529456",
"operationType": " |
|
transactionAmount: 100,deviceabcfghjfghjklghjkfghjk5678956789ip198.162.123.148latitude123.56565656,
"longitude":-23.565656,xTransactionId123} Code Block |
{"effectiveDate":"2022-01-30",transactionAmount100"actionOutputArea": {actionData[ | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
Realiza una transferencia - Número de cuenta Bloqueada | Code Block |
---|
{
"transactionData": {
" |
|
authorizationCode"1234"
accountNumber9500508496924050930
transactionDescriptionP2P SENDER311S3q",
"effectiveDate": "2023-06-21",
" |
|
feeAmount0
transactionCode8008,
currentBalance-5988391,
creditLimitsuppressMonetaryTransaction": |
|
0,
openToBuy598649100 authorizationNumber507925 }"box": "3",
"crPlaza": "10MON",
|
|
{ authorizationCode1234
accountNumber9500502030236002994
transactionDescriptionP2P RECIEVERsenderAccount012345",
"beneficiaryAccount": "beneficiaryAccount1",
" |
|
feeAmountcounterpartInstitution": " |
|
0aaaaa",
"operatingInstitution": "bbbbb",
" |
|
transactionCode8012"frcUprkBenefi",
"orderingFrcUprk": "orderingFrcUp",
" |
|
currentBalance-169434"123456789-123456789-123456789-12",
"ip": "198.162.200.200",
" |
|
creditLimit0-109.699,
"longitude": 23.062,
" |
|
openToBuy17133400"recipientName01234567890123456",
"orderingName": "orderingName012345678901234567",
" |
|
authorizationNumber332272paymentSourceId012345"
},
|
|
}"xTransactionId": "123",
"accountNumber": "9500508176491773011",
|
|
] }
}2 OK: Solicitud exitosa. 4 Bad Request: Request con campos no válidos. 5 Internal Server Error: Servicios no disponibles. | FrozenBalanceTransfer
Descripción | Request | Response | HTTP Codes |
---|
Realiza una transferencia QR. | Code Block |
{transactionData{transactionAmount20actionCode"8038",authorizationCodeQ1er44effectiveDate2022-08-24,"description": "QR code test - normal hours", | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
PUT → /v1/balances/transfers-p2p
Descripción | Request | Response | HTTP Codes | GRPC Codes |
---|
Realiza una transferencia P2P. | |
paidConceptHellomemoPostedIndicator suppressMonetaryTransactiontransactionDescription": " |
|
Yn1n2ByPassNidentifier 0,
box:"1",crPlaza"10MON",crStore50WHNkeyTrackingHellobeneficiaryAccounttransactionDescription": " |
|
HellosenderAccountHellocounterpartInstitutionHello, "operatingInstitution": "Hello"frcUprkBeneficiaryHelloorderingFrcUprk"Hello"123456789-123456789-123456789-12abcfghjfghjklghjkfghjk5678956789",
"ip": "198.162. |
|
200200-10969956565656,
"longitude": -23. |
|
062recipientNameHello, "orderingName | Code Block |
---|
{
"effectiveDate": " |
|
Hello "paymentSourceIdbf0469d7-b507-44d6-af7d-d4edea6340f1"
},
"xTransactionId": "123",
"accountNumber": "9500508020127353147"
} Code Block |
---|
{
"historyDate": "2023-09-12",
"historyTime": "111311",
"transactionData": {
"transactionCode": "8038",
"transactionDescription": "CASHOUT WITH QR-CODE(FREE BAL)",
"currentBalance": "-1382946",
"openToBuy": "1382326"
}
} |
| 2 OK: Solicitud exitosa.
4 100",
"actionOutputArea": {
"actionData": [
{
"authorizationCode": "1234",
"accountNumber": "9500508496924050930",
"transactionDescription": "P2P SENDER",
"transactionCode": 8008,
"currentBalance": -5988391.0,
"openToBuy": 5.987391E8,
"authorizationNumber": "205229"
},
{
"authorizationCode": "1234",
"accountNumber": "9500502030236002994",
"transactionDescription": "P2P RECIEVER",
"transactionCode": 8012,
"currentBalance": -169434.0,
"openToBuy": 1.70434E7,
"authorizationNumber": "923589"
}
]
}
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. |
5 13 Internal Server Error: Servicios no disponibles. |
...
PUT → /v1/balances/transfers-qr
Descripción | Request | Response | HTTP Codes |
---|
Realiza la consulta de balance de cuentaGRPC Codes |
---|
Realiza una transferencia QR. | |
accountNumber"9500501520328494829"} Code Block |
{accountOrCardNumber"9500501520328494829"currentBalance998176210159availableCreditLimit32237425576994724frozenBalance 26000
}2 OK: Solicitud exitosa. 4 Bad Request: Request con campos no válidos. 5 Internal Server Error: Servicios no disponibles. | Customer Adapter
Info |
---|
Permite tener la comunicación entre Spin y Fiserv para los módulos de customer. Este componente se desarrolló para desacoplar los procesos core de Spin y el proveedor financiero para lograr una mayor escalabilidad. |
CreateCustomer
...
Descripción
...
Request
...
Response
...
HTTP Codes
...
Creación del cliente
...
2 OK: Solicitud exitosa.
4 Bad Request: Request con campos no válidos.
5 Internal Server Error: Servicios no disponibles.
UpdateCustomer
...
Descripción
...
Request
...
Response
...
HTTP Codes
...
Actualizar cliente
...
2 OK: Solicitud exitosa.
4 Bad Request: Request con campos no válidos.
5 Internal Server Error: Servicios no disponibles.
LinkAccountToCustomer
...
Descripción
...
Request
...
Response
...
HTTP Codes
...
Vincular cuenta al cliente
...
2 OK: Solicitud exitosa.
4 Bad Request: Request con campos no válidos.
5 Internal Server Error: Servicios no disponibles.
Card Gateway
Info |
---|
Permite tener la comunicación entre Spin y Fiserv para los módulos de card. |
POST → /v1/cards/embosser
...
Descripción
...
Request
...
Response
...
HTTP Codes
POST → /v1/cards/embosser/details
Descripción | Request | Response | HTTP Codes |
---|
Obtener cuenta mediante Pantoken | Code Block |
---|
{
"panToken": "0004217470595215803",
"cardSequence": 2147483647,
"foreignUse": 0
} |
| Code Block |
---|
{
"postToAccount": "9500508261544464147",
"blockCode": "Z",
"cardNumber": "***************0252",
"currentCardActivation": "N",
"dateBlock": "2023-09-04"
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
POST → /v1/cards/embosser/block
Descripción | Request | Response | HTTP Codes |
---|
Bloqueo de tarjetas | Code Block |
---|
{
"blockCode": "Z",
"panToken": "0004217470885923553",
"cardSequence": 1,
"functionCode": "B" //B para bloquear - u Desbloquear
} |
| | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
Aggregation
Estos son los componentes que se estarán usando para la ejecución de pruebas en el proyecto:
Account Aggregation Service
Info |
---|
Incorpora los servicios de Account Mirror y Balance Mirror Validación de campos mandatorios antes del envío a Fiserv Expone endpoints a través de un API REST y gRPC |
POST → /v1/accounts/details
Descripción | Request | Response | HTTP Codes |
---|
Realiza la consulta de bloqueos de cuenta. | Code Block |
---|
{
"accountNumber": "9500501520328494829"
} |
| Code Block |
---|
{
"accountData": {
"accountNumber": "9500501520328494829",
"customerNumber": "0995000000000035249",
"blockCode1": "M",
"blockCode1Date": "2023-09-06",
"blockCode2": "M",
"blockCode2Date": "2023-08-11"
}
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
POST → /v1/accounts/blocks
Descripción | Request | Response | HTTP Codes |
---|
Realiza bloqueos/desbloqueo de cuenta. | Code Block |
---|
{
"blockCode": "",
"blockCodeIndicator": 1,
"foreignUse": 0,
"functionCode": "U",
"accountNumber": "9500501520328494829"
} |
| Code Block |
---|
{
"functionCode": "U",
"accountNumber": "9500501520328494829",
"localOrganization": 950
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
POST → /v1/accounts/syncs
Descripción | Request | Response | HTTP Codes |
---|
Sincroniza el mirror de account con la información de Fiserv. | Code Block |
---|
{
"accountNumber": "9500501520328494829"
} |
| Code Block |
---|
{
"accountData": {
"accountNumber": "9500501520328494829",
"customerNumber": "0995000000000035249",
"blockCode1": "M",
"blockCode1Date": "2023-09-06",
"blockCode2": "M",
"blockCode2Date": "2023-08-11"
}
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles.POST → /v1/balances |
POST → /v1/balances
Descripción | Request | Response | HTTP Codes |
---|
Realiza la consulta de balance de cuenta. | Code Block |
---|
{
"accountNumber": "9500501520328494829"
} |
| Code Block |
---|
{
"accountOrCardNumber": "9500501520328494829",
"currentBalance": 998176209259,
"availableCreditLimit": 1823760996,
"frozenBalance": 26000.0
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
POST → /v1/balances/syncs
Descripción | Request | Response | HTTP Codes |
Sincroniza el mirror de balance con la información de Fiserv "2022-08-24",
"description": "QR code test - normal hours",
"paidConcept": "Hello",
"memoPostedIndicator": " ",
"suppressMonetaryTransaction": "Y",
"n1n2ByPass": "N",
"identifier": 0,
"box": "1",
"crPlaza": "10MON",
"crStore": "50WHN",
"keyTracking": "Hello",
"beneficiaryAccount": "Hello",
"senderAccount": "Hello",
"counterpartInstitution": "Hello",
"operatingInstitution": "Hello",
"frcUprkBeneficiary": "Hello",
"orderingFrcUprk": "Hello",
"device": "123456789-123456789-123456789-12",
"ip": "198.162.200.200",
"latitude": -109.699,
"longitude": 23.062,
"recipientName": "Hello",
"orderingName": "Hello",
"paymentSourceId": "bf0469d7-b507-44d6-af7d-d4edea6340f1"
},
"xTransactionId": "123",
"accountNumber": "9500508020127353147"
} |
| Code Block |
---|
{
"historyDate": "2023-09-08",
"historyTime": "122732",
"transactionData": {
"transactionCode": "8038",
"transactionDescription": "CASHOUT WITH QR-CODE(FREE BAL)",
"currentBalance": "-1382946",
"openToBuy": "1382486"
}
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
...
Customer Aggregation service
Info |
---|
Incorpora los endpoints de Customer Validación de campos mandatorios antes del envío a Fiserv Expone endpoints a través de un API REST y gRPC |
POST → /customers
Descripción | Request | Response | HTTP Codes | GRPC Codes |
---|
Registro del cliente en la el proveedor de clientes. | Code Block |
---|
{
"logo": "60",
"address": "Ciruelas",
"houseNumber": "12345",
"externalNumber": "8007",
"colony": "Lomas",
"city": "Lomas de Alvarez",
"state": "COL",
"postalCode": "99980",
"dateOfBirth": "2000-08-06",
"stateOfBirth": "CDMX",
"email": "lmedina@palo-it.com",
"firstName": "Judith",
"lastName": "Medina",
"maternalLastName": "Ruiz",
"mobilePhoneNumber": "5521163588",
"identificationNumber": "4152554487415113698",
"ine": "1234117890099",
"occupation": "Tester",
"genderCode": "1",
"user4":"1",
"identificationNumberFlag": "2"
} |
| Code Block |
---|
{
"customerNumber": "0995000000000080589"
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
PUT → /customers
Descripción | Request | Response | HTTP Codes | GRPC Codes |
---|
Actualización de los datos del cliente en el proveedor de clientes. | Code Block |
---|
{
"email": "lmedina@palo-it.com",
"numberType": 1,
"customerNumber": "0995000000000077863",
"address": "Ciruelas",
"dateOfBirth": "1999-02-06",
"city": "Villa de Alvarez",
"countryCode": "MEX",
"county": "CDMX",
"colony": "ADOLFO LOPEZ MATEOS",
"externalNumber": "1007",
"firstName": "Sandra",
"genderCode": 2,
"houseNumber": "123",
"ine": "1234117890099",
"lastName": "Velasco",
"maritalStatus": 0,
"maternalLastName": "Medina",
"middleName": "Rosa",
"mobilePhoneIndicator": 1,
"mobilePhoneNumber": "31211635899",
"occupation": "NURSE",
"ownOrRentResidenceFlag": 0,
"postalCode": 54070,
"stateOfBirth": "DF"
} |
| Code Block |
---|
{
"outputArea": {
"customerNumber": "0995000000000077863",
"accountNumber": "0995000000000077863",
"responseCode": "",
"level": "",
"transactionAmount": 0,
"countryLimit": {
"dailyLimitLoad": 0,
"monthlyLimitLoad": 0,
"dailyLimitCash": 0,
"monthlyLimitCash": 0,
"limitForDepositTransactions": 0
},
"accountLimit": {
"accountDailyAmountLoad": 0,
"accountMonthlyAmountLoad": 0,
"accountDailyAmountCash": 0,
"accountMonthlyAmountCash": 0
}
}
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
POST → /customers/account
Descripción | Request | Response | HTTP Codes | GRPC Codes |
---|
Vinculación del cliente en la cuenta de Spin. | Code Block |
---|
{
"accountNumber": "0004217470138987703",
"customerNumber": "0995000000000045698",
"qualification": "1",
"customerTypeIndicator": 0,
"foreignUseIndicator": 0,
"alternateCustomer": {
"expirationDate": "2023/12/30"
}
} |
| Code Block |
---|
{
"customerNumber": "0995000000000045697",
"accountNumber": "1650"
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
...
Card Aggregation service
Info |
---|
Incorpora los endpoints de Card Validación de campos mandatorios antes del envío a Fiserv Expone endpoints a través de un API REST y gRPC |
POST /cards/embosser/details
Descripción | Request | Response | HTTP Codes |
---|
Obtener cuenta mediante Pantoken | Code Block |
---|
{
"panToken": "0004217470595215803",
"cardSequence": 2147483647,
"foreignUse": 0
} |
| Code Block |
---|
{
"postToAccount": "9500508261544464147",
"blockCode": "Z",
"cardNumber": "***************0252",
"currentCardActivation": "N",
"dateBlock": "2023-09-04"
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
PUT /cards/account
Descripción | Request | Response | HTTP Codes |
---|
Vinculación de tarjetas a cuenta | Code Block |
---|
{
"customerOrAccountNumber": "1234567890123456800",
"cardNumber": "000123456ID5IXX1234",
"cardholderType": 1
} |
| Code Block |
---|
{
"customerOrAccountNumber": "1234567890123456800",
"cardNumber": "000123456ID5IXX1234",
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
POST /cards/account
Descripción | Request | Response | HTTP Codes |
---|
Recuperación del numero de cuenta | Code Block |
---|
{
"cardNumber": "000123456ID5IXX1234",
}
|
| Code Block |
---|
{
"accountNumber": "0004217470041850252"
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
Info |
---|
El cardNumber debe tener tres ceros a la izquierda para completar el tamaño de 19 dígitos solicitado por el operador bancario. |
Image Added
PUT /cards/activation [Equipo de Spin]
Descripción | Request | Response | HTTP Codes |
---|
Activación de tarjetas | Code Block |
---|
{
"organizationNumber": 999,
"cardNumber": "000123456ID5IXX1234",
"serviceType": "A",
"userData": "string"
} |
| Code Block |
---|
{
"organizationNumber": 999,
"logo": 1,
"cardNumber": "000123456ID5IXX1234",
"serviceType": "A",
"numberCardsActivated": 1,
"foreignOrg": 1,
"numberForeignCardsActivated": 0
}
|
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
PUT /cards/embosser/block
Descripción | Request | Response | HTTP Codes |
---|
Bloqueo de tarjetas | Code Block |
---|
{
"blockCode": "Z",
"panToken": "0004217470885923553",
"cardSequence": 1,
"functionCode": "B" //B para bloquear - u Desbloquear
} |
| | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
...
Mirror
Account
Info |
---|
Consulta de bloqueos Repositorio sincronizado con Fiserv Disminuye peticiones al Proveedor |
GetAccountDetails
Descripción | Request | Response | GRPC Codes |
---|
Realiza la consulta de bloqueos de cuenta. | Code Block |
---|
{
"accountNumber": "9500501520328494829"
} |
| Code Block |
---|
{
"accountData": {
"accountNumber": "9500501520328494829",
"customerNumber": "0995000000000035249",
"blockCode1": "M",
"blockCode1Date": "2023-09-07",
"blockCode2": "M",
"blockCode2Date": "2023-08-11",
"accountMakerDateOfBirth": "",
"availableCredit": 0,
"userAmounts9": 0,
"userAmounts10": 0,
"userAmounts7": 0
}
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
SetAccountBlock
Descripción | Request | Response | GRPC Codes |
---|
Realiza bloqueos/desbloqueo de cuenta. | Code Block |
---|
{
"blockCode": "",
"blockCodeIndicator": 1,
"foreignUse": 0,
"functionCode": "U",
"accountNumber": "9500501520328494829"
} |
| Code Block |
---|
{
"functionCode": "B",
"accountNumber": "9500501520328494829",
"blockCode1Local": "M",
"localOrganization": 950
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
SynchronizeMirrorAccount
Descripción | Request | Response | GRPC Codes |
---|
Sincroniza el mirror de account con la información de Fiserv. | Code Block |
---|
{
"accountNumber": "9500501520328494829"
} |
| Code Block |
---|
{
"accountData": {
"accountNumber": "9500501520328494829",
"customerNumber": "0995000000000035249",
"blockCode1": "M",
"blockCode1Date": "2023-09-07",
"blockCode2": "M",
"blockCode2Date": "2023-08-11",
"accountMakerDateOfBirth": "",
"availableCredit": 0,
"userAmounts9": 0,
"userAmounts10": 0,
"userAmounts7": 0
}
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
...
Balance
Info |
---|
Consulta de balance Repositorio sincronizado con Fiserv Disminuye peticiones al Proveedor |
GetAccountBalance
Descripción | Request | Response | GRPC Codes |
---|
Realiza la consulta de balance de cuenta. | Code Block |
---|
{
"accountNumber": "9500501520328494829"
} |
| Code Block |
---|
{
"accountOrCardNumber": "9500501520328494829",
"currentBalance": 998176210159,
"availableCreditLimit": 32237425576994724,
"frozenBalance": 26000
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
SynchronizeMirrorBalance
Descripción | Request | Response | GRPC Codes |
---|
Sincroniza el mirror de balance con la información de Fiserv. | Code Block |
---|
{
"accountNumber": "9500501520328494829"
} |
| Code Block |
---|
{
"accountOrCardNumber": "9500501520328494829",
"currentBalance": 998176210159,
"availableCreditLimit": 32237425576994724,
"frozenBalance": 26000
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
TransferBalance
Descripción | Request | Response | GRPC Codes |
---|
Realiza una transferencia . | Code Block |
---|
{
"transactionData": {
"transactionAmount": 1,
"actionCode": "8012",
"authorizationCode": "311S3q",
"effectiveDate": "2023-06-21",
"description": "P2P",
"paidConcept": "test",
"memoPostedIndicator": "qqq",
"suppressMonetaryTransaction": "qqq",
"n1n2ByPass": "qqq",
"identifier": "S_IN",
"box": "3",
"crPlaza": "10MON",
"crStore": "50WHN",
"keyTracking": "KEYTRACKING0123456789",
"senderAccount": "senderAccount012345",
"beneficiaryAccount": "beneficiaryAccount1",
"counterpartInstitution": "aaaaa",
"operatingInstitution": "bbbbb",
"frcUprkBeneficiary": "frcUprkBenefi",
"orderingFrcUprk": "orderingFrcUp",
"device": "123456789-123456789-123456789-12",
"ip": "198.162.200.200",
"latitude": -109.699,
"longitude": 23.062,
"recipientName": "recipientName01234567890123456",
"orderingName": "orderingName012345678901234567",
"paymentSourceId": "paymentSourceId012345",
"operationType": "W"
},
"xTransactionId": "123",
"accountNumber": "9500501545918394337"
} |
| Code Block |
---|
{
"historyDate": "2023-09-12",
"historyTime": "111208",
"transactionData": {
"transactionCode": "8012",
"transactionDescription": "P2P RECIEVER",
"currentBalance": "-2122495",
"openToBuy": "2122548"
}
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
TransferPeerToPeer
Descripción | Request | Response | GRPC Codes |
---|
Realiza una transferencia P2P. | Code Block |
---|
{
"from": {
"accountNumber": "9500508496924050930",
"actionCode": "8008",
"transactionDescription": "P2P_TRANSFER_SOURCE",
"description": "P2P_TRANSFER_SOURCE",
"authorizationCode": "1234"
},
"to": {
"accountNumber": "9500502030236002994",
"actionCode": "8012",
"transactionDescription": "P2P_TRANSFER_TARGET",
"description": "P2P_TRANSFER_SOURCE",
"authorizationCode": "1234"
},
"effectiveDate": "2022-01-30",
"transactionAmount": 100,
"device": "abcfghjfghjklghjkfghjk5678956789",
"ip": "198.162.123.148",
"latitude": 123.56565656,
"longitude": -23.565656,
"xTransactionId": "123"
} |
| Code Block |
---|
{
"effectiveDate": "2022-01-30",
"transactionAmount": "100",
"actionOutputArea": {
"actionData": [
{
"authorizationCode": "1234",
"accountNumber": "9500508496924050930",
"transactionDescription": "P2P SENDER",
"feeAmount": "0",
"transactionCode": 8008,
"currentBalance": -5988391,
"creditLimit": 0,
"openToBuy": 598649100,
"authorizationNumber": "507925"
},
{
"authorizationCode": "1234",
"accountNumber": "9500502030236002994",
"transactionDescription": "P2P RECIEVER",
"feeAmount": "0",
"transactionCode": 8012,
"currentBalance": -169434,
"creditLimit": 0,
"openToBuy": 17133400,
"authorizationNumber": "332272"
}
]
}
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
FrozenBalanceTransfer
Descripción | Request | Response | GRPC Codes |
---|
Realiza una transferencia QR. | Code Block |
---|
{
"transactionData": {
"transactionAmount": 20,
"actionCode": "8038",
"authorizationCode": "Q1er44",
"effectiveDate": "2022-08-24",
"description": "QR code test - normal hours",
"paidConcept": "Hello",
"memoPostedIndicator": " ",
"suppressMonetaryTransaction": "Y",
"n1n2ByPass": "N",
"identifier": 0,
"box": "1",
"crPlaza": "10MON",
"crStore": "50WHN",
"keyTracking": "Hello",
"beneficiaryAccount": "Hello",
"senderAccount": "Hello",
"counterpartInstitution": "Hello",
"operatingInstitution": "Hello",
"frcUprkBeneficiary": "Hello",
"orderingFrcUprk": "Hello",
"device": "123456789-123456789-123456789-12",
"ip": "198.162.200.200",
"latitude": -109.699,
"longitude": 23.062,
"recipientName": "Hello",
"orderingName": "Hello",
"paymentSourceId": "bf0469d7-b507-44d6-af7d-d4edea6340f1"
},
"xTransactionId": "123",
"accountNumber": "9500508020127353147"
} |
| Code Block |
---|
{
"historyDate": "2023-09-12",
"historyTime": "111311",
"transactionData": {
"transactionCode": "8038",
"transactionDescription": "CASHOUT WITH QR-CODE(FREE BAL)",
"currentBalance": "-1382946",
"openToBuy": "1382326"
}
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
...
Card
Info |
---|
Incorpora los endpoints de Card Mirror Sincronización de datos con el Mirror Expone endpoints a través de un API REST |
POST → /v1/cards/embossers/details
Descripción | Request | Response | HTTP Codes |
---|
Obtener cuenta mediante Pantoken | Code Block |
---|
{
"panToken": "0004217470595215803",
"cardSequence": 2147483647,
"foreignUse": 0
} |
| Code Block |
---|
{
"postToAccount": "9500508261544464147",
"blockCode": "Z",
"cardNumber": "***************0252",
"currentCardActivation": "N",
"dateBlock": "2023-09-04"
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
PUT → /v1/cards/embossers/block
Descripción | Request | Response | HTTP Codes |
---|
Bloqueo de tarjetas | Code Block |
---|
{
"blockCode": "Z",
"panToken": "0004217470885923553",
"cardSequence": 1,
"functionCode": "B" //B para bloquear - u Desbloquear
} |
| | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
...
Gateway
Account Adapter
Info |
---|
Permite tener la comunicación entre Spin y Fiserv para los módulos de account y balance. |
GetAccountDetails
Descripción | Request | Response | GRPC Codes |
---|
Realiza la consulta de bloqueos de cuenta. | Code Block |
---|
{
"accountNumber": "9500501520328494829"
} |
| Code Block |
---|
{
"accountData": {
"accountNumber": "9500501520328494829",
"customerNumber": "0995000000000035249",
"blockCode1": "M",
"blockCode1Date": "2023-09-07",
"blockCode2": "M",
"blockCode2Date": "2023-08-11",
"accountMakerDateOfBirth": "",
"availableCredit": 0,
"userAmounts9": 0,
"userAmounts10": 0,
"userAmounts7": 0
}
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
SetAccountBlock
Descripción | Request | Response | GRPC Codes |
---|
Realiza bloqueos/desbloqueo de cuenta. | Code Block |
---|
{
"blockCode": "",
"blockCodeIndicator": 1,
"foreignUse": 0,
"functionCode": "U",
"accountNumber": "9500501520328494829"
} |
| Code Block |
---|
{
"functionCode": "B",
"accountNumber": "9500501520328494829",
"blockCode1Local": "M",
"localOrganization": 950
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
TransferBalance
Descripción | Request | Response | GRPC Codes |
---|
Realiza una transferencia . | Code Block |
---|
{
"transactionData": {
"transactionAmount": 1,
"actionCode": "8012",
"authorizationCode": "311S3q",
"effectiveDate": "2023-06-21",
"description": "P2P",
"paidConcept": "test",
"memoPostedIndicator": "qqq",
"suppressMonetaryTransaction": "qqq",
"n1n2ByPass": "qqq",
"identifier": "S_IN",
"box": "3",
"crPlaza": "10MON",
"crStore": "50WHN",
"keyTracking": "KEYTRACKING0123456789",
"senderAccount": "senderAccount012345",
"beneficiaryAccount": "beneficiaryAccount1",
"counterpartInstitution": "aaaaa",
"operatingInstitution": "bbbbb",
"frcUprkBeneficiary": "frcUprkBenefi",
"orderingFrcUprk": "orderingFrcUp",
"device": "123456789-123456789-123456789-12",
"ip": "198.162.200.200",
"latitude": -109.699,
"longitude": 23.062,
"recipientName": "recipientName01234567890123456",
"orderingName": "orderingName012345678901234567",
"paymentSourceId": "paymentSourceId012345"
},
"xTransactionId": "123",
"accountNumber": "9500501545918394337"
} |
| Code Block |
---|
{
"historyDate": "2023-09-12",
"historyTime": "111208",
"transactionData": {
"transactionCode": "8012",
"transactionDescription": "P2P RECIEVER",
"currentBalance": "-2122495",
"openToBuy": "2122548"
}
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
TransferPeerToPeer
Descripción | Request | Response | GRPC Codes |
---|
Realiza una transferencia P2P. | Code Block |
---|
{
"from": {
"accountNumber": "9500508496924050930",
"actionCode": "8008",
"transactionDescription": "P2P_TRANSFER_SOURCE",
"description": "P2P_TRANSFER_SOURCE",
"authorizationCode": "1234"
},
"to": {
"accountNumber": "9500502030236002994",
"actionCode": "8012",
"transactionDescription": "P2P_TRANSFER_TARGET",
"description": "P2P_TRANSFER_SOURCE",
"authorizationCode": "1234"
},
"effectiveDate": "2022-01-30",
"transactionAmount": 100,
"device": "abcfghjfghjklghjkfghjk5678956789",
"ip": "198.162.123.148",
"latitude": 123.56565656,
"longitude": -23.565656,
"xTransactionId": "123"
} |
| Code Block |
---|
{
"effectiveDate": "2022-01-30",
"transactionAmount": "100",
"actionOutputArea": {
"actionData": [
{
"authorizationCode": "1234",
"accountNumber": "9500508496924050930",
"transactionDescription": "P2P SENDER",
"feeAmount": "0",
"transactionCode": 8008,
"currentBalance": -5988391,
"creditLimit": 0,
"openToBuy": 598649100,
"authorizationNumber": "507925"
},
{
"authorizationCode": "1234",
"accountNumber": "9500502030236002994",
"transactionDescription": "P2P RECIEVER",
"feeAmount": "0",
"transactionCode": 8012,
"currentBalance": -169434,
"creditLimit": 0,
"openToBuy": 17133400,
"authorizationNumber": "332272"
}
]
}
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
FrozenBalanceTransfer
Descripción | Request | Response | GRPC Codes |
---|
Realiza una transferencia QR. | Code Block |
---|
{
"transactionData": {
"transactionAmount": 20,
"actionCode": "8038",
"authorizationCode": "Q1er44",
"effectiveDate": "2022-08-24",
"description": "QR code test - normal hours",
"paidConcept": "Hello",
"memoPostedIndicator": " ",
"suppressMonetaryTransaction": "Y",
"n1n2ByPass": "N",
"identifier": 0,
"box": "1",
"crPlaza": "10MON",
"crStore": "50WHN",
"keyTracking": "Hello",
"beneficiaryAccount": "Hello",
"senderAccount": "Hello",
"counterpartInstitution": "Hello",
"operatingInstitution": "Hello",
"frcUprkBeneficiary": "Hello",
"orderingFrcUprk": "Hello",
"device": "123456789-123456789-123456789-12",
"ip": "198.162.200.200",
"latitude": -109.699,
"longitude": 23.062,
"recipientName": "Hello",
"orderingName": "Hello",
"paymentSourceId": "bf0469d7-b507-44d6-af7d-d4edea6340f1"
},
"xTransactionId": "123",
"accountNumber": "9500508020127353147"
} |
| Code Block |
---|
{
"historyDate": "2023-09-12",
"historyTime": "111311",
"transactionData": {
"transactionCode": "8038",
"transactionDescription": "CASHOUT WITH QR-CODE(FREE BAL)",
"currentBalance": "-1382946",
"openToBuy": "1382326"
}
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
GetAccountBalance
Descripción | Request | Response | GRPC Codes |
---|
Realiza la consulta de balance de cuenta. | Code Block |
---|
{
"accountNumber": "9500501520328494829"
} |
| |
"accountOrCardNumber": "9500501520328494829",
|
|
998176209259 1823760996 .02004003 Bad Request: Request con campos no válidos. |
401: Apy Key no válida.
500: Servicios no disponibles.
...
13 Internal Server Error: Servicios no disponibles. |
...
Customer Adapter
Info |
---|
Permite tener la comunicación entre Spin y Fiserv para los módulos de customer. Este componente se desarrolló para desacoplar los procesos core de Spin y el proveedor financiero para lograr una mayor escalabilidad. |
CreateCustomer
Descripción | Request | Response |
---|
HTTP Realiza una transferencia .transactionData{transactionAmount1actionCode8012authorizationCode311S3qeffectiveDate2023-06-21descriptionP2PpaidConcepttestmemoPostedIndicator"qqqsuppressMonetaryTransactionqqqn1n2ByPassqqqidentifierS_INbox3crPlaza10MONcrStore50WHNkeyTrackingKEYTRACKING0123456789senderAccountsenderAccount012345beneficiaryAccountbeneficiaryAccount1counterpartInstitutionaaaaaoperatingInstitution bbbbbfrcUprkBeneficiaryidentificationNumberFlag": " |
|
frcUprkBenefi",orderingFrcUprk"orderingFrcUp", | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
UpdateCustomer
Descripción | Request | Response | GRPC Codes |
---|
Actualizar cliente | |
device123456789-123456789-123456789-12ip"198.162.200.200"latitude-109.699,
"longitude": 23.062recipientNamerecipientName01234567890123456orderingNameorderingName012345678901234567paymentSourceIdpaymentSourceId012345}, xTransactionId123"accountNumber":"9500501545918394337"} Code Block |
{
"historyDate2023-09-08 "historyTime":"122250", "transactionData":{ transactionCode8012 transactionDescriptionP2P RECIEVER currentBalance-2122495 openToBuy"2122546"
}
}200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | PUT → /v1/balances/transfers-p2p
Descripción | Request | Response | HTTP Codes |
---|
Realiza una transferencia P2P. | Code Block |
{
"from": {2,
"houseNumber": "123",
" |
|
accountNumber9500508496924050930actionCode8008transactionDescription"P2P_TRANSFER_SOURCE"descriptionP2P_TRANSFER_SOURCEauthorizationCode1234}, to{accountNumber9500502030236002994actionCode8012transactionDescription"P2P_TRANSFER_TARGET"0,
"postalCode": 54070,
" |
|
descriptionP2P_TRANSFER_SOURCE",authorizationCode"1234"},effectiveDate2022-01-300995000000000077863",
"accountNumber": " |
|
transactionAmount": 100,deviceabcfghjfghjklghjkfghjk5678956789ip198.162.123.148latitude123.56565656,longitude-23.565656,"xTransactionId":"123"} Code Block |
{ effectiveDate"2022-01-30",
"transactionAmount": "100",
"actionOutputArea": {
"actionData": [
{
"authorizationCode": "1234",
"accountNumber": "9500508496924050930",
"transactionDescription": "P2P SENDER",
"transactionCode": 8008,
"currentBalance": -5988391.0,
"openToBuy": 5.987391E8,
"authorizationNumber": "205229"
},
{
"authorizationCode": "1234",
"accountNumber": "9500502030236002994",
"transactionDescription": "P2P RECIEVER",
"transactionCode": 8012,
"currentBalance": -169434.0,
"openToBuy": 1.70434E7,
"authorizationNumber": "923589"
}
]
}
}200: Solicitud exitosa.
4005000,
"monthlyLimitLoad": 0,
"dailyLimitCash": 0,
"monthlyLimitCash": 0,
"limitForDepositTransactions": 0
},
"accountLimit": {
"accountDailyAmountLoad": 0,
"accountMonthlyAmountLoad": 0,
"accountDailyAmountCash": 0,
"accountMonthlyAmountCash": 0
}
}
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. |
401: Apy Key no válida.
13 Internal Server Error: Servicios no disponibles. |
...
LinkAccountToCustomer
Descripción | Request | Response |
---|
HTTP Realiza una transferencia QR.Vincular cuenta al cliente | |
transactionData {
transactionAmount: 20 actionCode"8038","authorizationCode":"Q1er44",
effectiveDate202224,description "QR code test - normal hours
paidConceptHello2",
"customerTypeIndicator": 0,
" |
|
memoPostedIndicator" ",suppressMonetaryTransactionYn1n2ByPassN",
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
...
Card Gateway
Info |
---|
Permite tener la comunicación entre Spin y Fiserv para los módulos de card. |
POST → /cards/account
Descripción | Request | Response | HTTP Codes |
---|
Vincular una tarjeta con un número de cuenta | |
identifier0,
"box": "1",crPlaza10MON,
"crStore": "50WHN",
"keyTracking": "Hello",
"beneficiaryAccount": "Hello",
"senderAccount": "Hello",
"counterpartInstitution": "Hello", | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
PUT → /cards/account
Descripción | Request | Response | HTTP Codes |
---|
Desvincular una tarjeta de un número de cuenta | Code Block |
---|
{
"customerOrAccountNumber": "9500507060523627372",
"cardNumber": "0004217470969640887",
"cardholderType": 1
} |
| |
operatingInstitutionHellofrcUprkBeneficiarycustomerOrAccountNumber": " |
|
Hello,
"orderingFrcUprk": "Hello",
"device": "123456789-123456789-123456789-12",
"ip": "198.162.200.200",
"latitude": -109.699,
"longitude": 23.062,
"recipientName": "Hello",
"orderingName": "Hello",
"paymentSourceId": "bf0469d7-b507-44d6-af7d-d4edea6340f1"
},
"xTransactionId": "123",
"accountNumber": "9500508020127353147"
} Code Block |
---|
{
"historyDate": "2023-09-08",
"historyTime": "122732",
"transactionData": {
"transactionCode": "8038",
"transactionDescription": "CASHOUT WITH QR-CODE(FREE BAL)",
"currentBalance": "-1382946",
"openToBuy": "1382486"
}
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | Customer Aggregation service
Info |
---|
Incorpora los endpoints de Customer Validación de campos mandatorios antes del envío a Fiserv Expone endpoints a través de un API REST y gRPC |
POST → /customers
Descripción | Request | Response | HTTP Codes |
Registro del cliente en la el proveedor de clientes. | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
POST → /v1/cards/embosser/details
...
Actualización de los datos del cliente en el proveedor de clientes.
...
200: Solicitud exitosa.
400: Request con campos no válidos.
401: Apy Key no válida.
500: Servicios no disponibles.
POST → /customers/account
Descripción | Request | Response | HTTP Codes |
---|
Vinculación del cliente en la cuenta de Spin. | Descripción | Request | Response | HTTP Codes |
---|
Obtener cuenta mediante Pantoken Activo | Code Block |
---|
{
"panToken": "0004217470595215803",
"cardSequence": 2147483647,
"foreignUse": 0
} |
| Code Block |
---|
{
"postToAccount": "9500508261544464147",
"blockCode": "Z",
"cardNumber": "***************0252",
"currentCardActivation": "N",
"dateBlock": "2023-09-04"
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
Obtener cuenta mediante Pantoken Inactivo | Code Block |
---|
{
"panToken": "0004217470595215803",
"cardSequence": 1,
"foreignUse": 1
} |
| Code Block |
---|
{
"postToAccount": "9500507060523627372",
"blockCode": "Z",
"cardNumber": "***************0252",
"currentCardActivation": "N",
"dateBlock": "2023-09-04"
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
PUT → /customers
...
Descripción
...
Request
...
Response
...
HTTP Codes
Obtener cuenta mediante Pantoken Expirado | Code Block |
---|
{
"panToken": "0004217470200073271",
"cardSequence": 1,
"foreignUse": 1
} |
| Code Block |
---|
{
"postToAccount": "9500507060523627372",
"cardNumber": "***************8578",
"currentCardActivation": "N"
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. |
401: Apy Key no válida.
500: Servicios no disponibles.
Card Aggregation service
Info |
---|
Incorpora los endpoints de Card Validación de campos mandatorios antes del envío a Fiserv Expone endpoints a través de un API REST y gRPC |
...
401: Apy Key no válida. 500: Servicios no disponibles. |
POST → /v1/cards/embosser/
...
block
Descripción | Request | Response | HTTP Codes |
---|
Obtener cuenta mediante PantokenBloqueo de tarjetas - Bloqueo | |
panToken0004217470595215803cardSequence": 2147483647,
"foreignUse": 0
} Code Block |
---|
{
"postToAccount": "9500508261544464147",
"blockCode": "Z",
"cardNumber": "***************0252",
"currentCardActivation": "N",
"dateBlock": "2023-09-04"
} |
| panToken": "0004217470885923553",
"cardSequence": 1,
"functionCode": "B" //B para bloquear - u Desbloquear
} |
| | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
PUT /account/prepaid
Descripción
PUT /cards/activation
...
Descripción
...
Request
...
Response
...
HTTP Codes
PUT /cards/embosser/block
Descripción | Request | Response | HTTP Codes |
---|
Request | Response | HTTP Codes | GET /cards/account
...
Descripción
...
Request
...
Response
...
HTTP Codes
Bloqueo de tarjetas - Desbloqueo | Code Block |
---|
{
"blockCode": " |
|
Z00042174708859235530004217470752022413",
"cardSequence": 1,
"functionCode": " |
|
BU" //B para bloquear - u Desbloquear
} |
| | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
...